2013-03-12 88 views
1

我有一個sql server數據庫[A]需要引用另一個數據庫中的表[B]在同一臺服務器中的許多存儲過程。TSQL Synoym爲數據庫名稱

因此,在一個典型的SP我艾米有一個像

select * from [A].table1 inner join 
       [B].table2 ..... 

這種運作良好。不過在[B]數據庫名稱可能會在未來某個時候發生變化。所以我想提出一個變量(同義詞聲明到另一個數據庫)。一種方法當然是在數據庫[A]的[B]中爲表創建同義詞。另外我不想使用動態SQL。

其他數據庫(如Oracle)的有像這是一個symberolic名到任何其他數據庫(也許另一臺服務器上)

想知道數據庫鏈接的概念,如果在TSQL提供

感謝

+0

[鏈接服務器](http://msdn.microsoft.com/en-us/library/ff772782.aspx)雖然更適合DBA論壇。不積極,你可以創建一個鏈接到同一臺服務器... – xQbert 2013-03-12 00:29:59

回答

1
任何同等功能

SQL Server沒有數據庫同義詞。您唯一的選擇是從[A]的[B]爲所有需要的對象創建同義詞。但是,您可以創建一個自動循環[B]中的對象並在[A]中創建它們的同義詞的過程。