Sql-Server
我可以通過相對路徑進行跨數據庫或跨伺服器引用嗎?
我有兩個數據庫,db1和db2,在兩個不同的伺服器server1和server2上執行,並且db2有一些儲存過程可以修改db1上的表列。
在這些儲存過程中,我們使用連結伺服器和完全限定名稱來引用db1上的表,例如
[server1].[database].[dbo].[table1]
.現在,我們決定將db1從server1遷移到server2。遷移後,db1和db2都將在server2上執行。
問題
- 我是否必須修改每個跨伺服器引用以刪除
[server1]
儲存過程中的名稱?- 是否可以通過相對路徑定義跨數據庫或跨伺服器引用,這樣就不需要每次兩個數據庫更換伺服器時都修改它們?
謝謝你。
假設,遷移後,您完全不需要此連結伺服器到
Server 1
,那麼您應該能夠刪除並重新創建它,使用相同的名稱但指向目前/本地實例(即Server 2
)。這稱為“回環”,允許程式碼不加修改地繼續工作。但是,這是一個短期解決方案,因為如果您不需要,您不想通過連結伺服器。您應該瀏覽所有程式碼並刪除
[Server1].
引用。這種環回連結伺服器只是一種爭取時間慢慢進行這些更改的方法,而不是需要預先完成所有更改。