問題:
如何使用單一查詢從位於不同伺服器上的多個 SQL Server 資料庫高效檢索資料?
解:
利用 SQL Server 的連結伺服器功能。 這允許您建立與遠端伺服器的連接並存取其資料庫,就像它們是本機資料庫一樣。 方法如下:
方法 1:使用 SQL Server Management Studio (SSMS)
方法 2:使用 sp_addlinkedserver
預存程序
執行以下預存程序,用您的實際值取代佔位符:
<code class="language-sql">EXEC sp_addlinkedserver @server_name = N'YourLinkedServerName', @srvproduct = N'SQL Server', @provider_name = N'SQLNCLI', @data_source = N'YourServerAddress'</code>
成功設定連結伺服器後,就可以跨伺服器查詢資料了:
<code class="language-sql">SELECT * FROM YourLocalTable INNER JOIN [YourLinkedServerName].[YourLinkedDatabase].[YourSchema].[YourRemoteTable] ON YourLocalTable.ID = YourRemoteTable.ID;</code>
重要注意事項: 請記得將YourLinkedServerName
、YourLinkedDatabase
、YourSchema
、YourLocalTable
和YourRemoteTable
替換為您的特定伺服器名稱、資料庫名稱、架構名稱和表名稱。該架構可能與“dbo”不同,因此請驗證遠端表的正確架構名稱。 使用適當的 JOIN
子句(如上面所示的 INNER JOIN
)對於高效的資料檢索至關重要。
以上是如何使用 SQL Server 從多個伺服器檢索資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!