İki farklı veritabanına ait tabloları aynı sorguda nasıl kullanabiliriz?

Ortak VERİTABANI sunucularımızda zaman zaman farklı amaçlarla, farklı programlar için kurulmuş olan tablolarımızın bazen ortak bir sorguda birlikte kullanılması gerekebilir.

Bu tür durumlarda yazılımcılar sorunu veritabanlarına farklı farklı bağlanarak yazılımsal olarak çözme yoluna gidebilirler 🙂 Ancak sorguların CLIENT üzerinde çevrilmesinin SERVER üzerinde çevrilerek sadece sonuçların CLIENT sisteme gönderilmesinin daha hızlı olacağını savunanlardan olduğumdan bana göre bu tür işlemler sunucunun tek olduğu zamanlarda basit SQL yazım teknikleri ile rahatça çözülebilir.

Örnek olarak elimizde Veritabani1 ve Veritabani2 adında iki farklı veritabanımız olsun ve TB1 ile TB2 adında da iki farklı tablomuz olsun.

“Genelde MSSQL üzerindeki yapılara baktığımızda tablo isimlerinin solunda dbo. gibi o tabloyu açan kullanıcının bilgisini görebilirsiniz. Biz şimdi bu bilgiyi kullanacağız”

Select db1.*,db2.* from veritabani1.dbo.tb1 db1, veritabani2.dbo.tb2 db2

evet gördüğünüz gibi çok basit olarak veritabani1.dbo.tb1 tanımı için db1 adında ALIAS oluşturduk ve bunu select cümlemizde kısaltma amaçlı olarak kullandık.

Şimdi düşünelim bunu yazılımsal yapmak mı daha kolay yoksa sorgu cümlesinde mi?

Karar sizin.

Loading