2 farklı serverdaki tabloları join yapmak
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- MehmetZahit
- Üye
- Mesajlar: 70
- Kayıt: 04 Tem 2007 08:39
2 farklı serverdaki tabloları join yapmak
bir connection ile bir db ye bağlanıyoruz.
iki ayrı DB deki tabloları joinlemek mümkünmüdür?
bir veritabanında Tc kimlik numaraları ile kayıtlar var, başka bir veritabanında TC numaraları ile başka kayıtlar var. Bunları TC numarası bazında birleştirerek tek bir tablo olarak sorgu almak istiyorum.
iki ayrı DB deki tabloları joinlemek mümkünmüdür?
bir veritabanında Tc kimlik numaraları ile kayıtlar var, başka bir veritabanında TC numaraları ile başka kayıtlar var. Bunları TC numarası bazında birleştirerek tek bir tablo olarak sorgu almak istiyorum.
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: 2 farklı serverdaki tabloları join yapmak
Hangi DB?
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .
Re: 2 farklı serverdaki tabloları join yapmak
server mı, db mi?
ilkdb..tablo.field=ikincidb..tablo.field
ilkdb..tablo.field=ikincidb..tablo.field
Bir kelimenin anlamını öğretsen bile yeter..



Re: 2 farklı serverdaki tabloları join yapmak
benim de ihtiyacım olmuştu.
Direk query ile yapamıyorsun. Fakat LINKED SERVER ile 2.serveri 1.servera tanıtıp, aynı serverdaki 2.DB gibi kullanabiliyorsun..
Direk query ile yapamıyorsun. Fakat LINKED SERVER ile 2.serveri 1.servera tanıtıp, aynı serverdaki 2.DB gibi kullanabiliyorsun..
En son m_ekici tarafından 09 Mar 2010 10:32 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
- MehmetZahit
- Üye
- Mesajlar: 70
- Kayıt: 04 Tem 2007 08:39
Re: 2 farklı serverdaki tabloları join yapmak
SQL Server. Aynı server da iki ayrı DB.sabanakman yazdı:Hangi DB?
Re: 2 farklı serverdaki tabloları join yapmak
Kod: Tümünü seç
SELECT ST.LOGICALREF, ST.CODE, ST.NAME, UF.CODE AS CODE1, UF.NAME AS NAME1 FROM db1.dbo.LG_001_ITEMS ST WITH (NOLOCK)
LEFT JOIN db2.dbo.LG_001_UNITSETF UF ON UF.LOGICALREF=ST.UNITSETREF
Kod: Tümünü seç
SELECT column1 FROM db1.dbo.tablo1 WHERE ....
UNION
SELECT column2 FROM db2.dbo.tablo2 WHERE ....
- MehmetZahit
- Üye
- Mesajlar: 70
- Kayıt: 04 Tem 2007 08:39
Re: 2 farklı serverdaki tabloları join yapmak
Kod: Tümünü seç
SELECT TCKIMLIKNO
FROM DB_1.dbo.SATICILAR, DB_2.dbo.HRK
WHERE TCKIMLIKNO = '12345678901'
and DB_2.DBO.HRK.SATID = DB_1.DBO.SATICILAR.TCKIMLIKNO
Kod: Tümünü seç
Cannot resolve collation conflict for equal to operation.
Re: 2 farklı serverdaki tabloları join yapmak
text alanların Collation ları farklı. (DB_2.DBO.HRK.SATID = DB_1.DBO.SATICILAR.TCKIMLIKNO) aynı collationa sahip olmalı. google da collation değiştirme olarak aratırsın.
- MehmetZahit
- Üye
- Mesajlar: 70
- Kayıt: 04 Tem 2007 08:39
Re: 2 farklı serverdaki tabloları join yapmak
biri yabancı biri türk iki farklı yazılımın veritabanları olduğu için collation'u değiştirince sistemde sorun çıkabilir. Bu şekilde yapıldığını öğrenmiş oldum ilginiz için teşekkür.
- sabanakman
- Kıdemli Üye
- Mesajlar: 3081
- Kayıt: 17 Nis 2006 08:11
- Konum: Ah bi Antalya olaydı keşke (Ankara)
Re: 2 farklı serverdaki tabloları join yapmak
SQL Server üzerinde veritabanına veya herhangi başka bir yere ayar yapmadan collate dönüşümü yaparak şart verebilirsiniz. Tek yapmanız gerekenşeklinde aynı collation'a dönüşüm yaptırmak o kadar.
Kod: Tümünü seç
(DB_2.DBO.HRK.SATID collate TURKISH_CI_AS = DB_1.DBO.SATICILAR.TCKIMLIKNO collate TURKISH_CI_AS)
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
_________________
Derin olan kuyu değil kısa olan iptir. - .