我知道你可以用use the GUI in SSMS來指定運行哪個服務器。有沒有一種方法來要求/強制使用查詢字符串中的特定服務器(當在SSMS中運行時)?
是否有請求的特定服務器的方式,類似於說「使用服務器A,[數據庫]」從查詢腳本內?
我知道你可以用use the GUI in SSMS來指定運行哪個服務器。有沒有一種方法來要求/強制使用查詢字符串中的特定服務器(當在SSMS中運行時)?
是否有請求的特定服務器的方式,類似於說「使用服務器A,[數據庫]」從查詢腳本內?
使用OpenDataSource可能是一種設置在查詢範圍內訪問哪個服務器實例的方法 - 有關更多背景/詳細信息,您可能需要諮詢this SO question。
在查詢驗證它正在使用SERVERPROPERTY()
正確的服務器上運行,並拋出一個異常,如果它不是另一種選擇可能是一個TRY..CATCH
塊 - 這可以讓你把更多的人類可讀的錯誤消息,出於對用戶。
很確定這是不可能的。(像我們做什麼更改數據庫名稱USE [db_name]
)
但是有一個叫Linked Server
技術,它允許您連接到您的查詢中的第二個服務器,並使用資源的第二數據源。
參考此鏈接以獲取更多信息http://msdn.microsoft.com/en-us/library/ms188279.aspx
如:
select foo.id
from db1.table1 foo,
Server2.db_name.scheman_name.table_name bar
where foo.name=bar.name
什麼是對方的回答(OPENDATASOURCE)提到的是:
一個特設的部分連接信息不使用鏈接服務器名稱的四部分對象名稱 。
這是相當多的隱性Linked Server