如何連接不同資料庫伺服器上的表?
Jan 13, 2025 am 10:46 AM跨資料庫伺服器連線表查詢資料
在許多情況下,您可能需要連接位於不同伺服器上的不同資料庫中的表。這可能是一個挑戰,但有一些方法可以促進這種數據整合。
方法一:建立伺服器連結
sp_addlinkedserver
預存程序可讓您在本機伺服器和遠端資料庫伺服器之間建立連接,稱為伺服器連結。建立連結後,您可以透過在遠端伺服器名稱前新增其資料庫名稱來引用查詢中的遠端表。
例如,如果您在 MyDatabaseOnDB1
中有表格 MyTable
,在 MyDatabaseOnDB2
中有表格 MyOtherTable
,您可以使用以下查詢連接它們:
SELECT * FROM [MyDatabaseOnDB1].[dbo].[MyTable] tab1 INNER JOIN [DB2].[MyDatabaseOnDB2].[dbo].[MyOtherTable] tab2 ON tab1.ID = tab2.ID
登入後複製
方法二:使用 OPENQUERY
或者,您可以使用 OPENQUERY
在遠端伺服器上執行 SQL 查詢並檢索結果。此方法允許遠端伺服器最佳化查詢,並可以提高效能。為此,您可以建立本機伺服器上的臨時表,並使用 OPENQUERY
將其填入在遠端伺服器上執行的查詢結果。
例如:
-- 从其他数据库服务器获取数据 SELECT * INTO #myTempTable FROM OPENQUERY([DB2], 'SELECT * FROM [MyDatabaseOnDB2].[dbo].[MyOtherTable]') -- 现在我可以连接我的临时表来查看数据 SELECT * FROM [MyDatabaseOnDB1].[dbo].[MyTable] tab1 INNER JOIN #myTempTable tab2 ON tab1.ID = tab2.ID
登入後複製
OPENQUERY
的使用可以提高效能並節省時間,尤其是在使用查詢過濾大型資料集的情況下。
您是使用伺服器連結還是 OPENQUERY
取決於您的應用程式的特定要求和效能考量。這兩種方法都為跨資料庫伺服器查詢資料並促進有效的資料整合提供了可行的解決方案。
以上是如何連接不同資料庫伺服器上的表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

在 Linux 中運行 MySQl(有/沒有帶有 phpmyadmin 的 podman 容器)
