首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL Server 連結伺服器建立與查詢完整教學 (SQL Server 與 Oracle)

     編輯:關於SqlServer

兩種建立連結伺服器的方法

方法一:企業管理器圖形介面

  1. 展開「安全性」→「連結伺服器」→右鍵「新增連結伺服器」。
  2. 填寫:
      連結伺服器名稱:自訂別名(如 LINK_NORTHSNOW)。
      提供者名稱:依遠端資料庫類型選擇(SQL Server 選 SQLOLEDB,Oracle 選 MSDAORA)。
      資料來源:SQL Server 填遠端主機名/IP;Oracle 填 tnsnames.ora 別名。
      安全性:對應遠端登入帳密。

方法二:系統預存程序腳本化 (建議納入部署腳本)

SQL Server 連結 SQL Server

EXEC sp_addlinkedserver 'LINK_NORTHSNOW', '', 'SQLOLEDB', '遠端主機名或IP';
EXEC sp_addlinkedsrvlogin 'LINK_NORTHSNOW', 'false', NULL, '遠端帳號', '遠端密碼';

SQL Server 連結 Oracle

EXEC sp_addlinkedserver 'LINK_ORA', 'Oracle', 'MSDAORA', 'Oracle TNS 別名';
EXEC sp_addlinkedsrvlogin 'LINK_ORA', 'false', 'sa', 'Oracle帳號', 'Oracle密碼';

查詢語法差異

查詢 SQL Server 遠端資料

-- 四段式命名:連結伺服器.資料庫.擁有者.資料表
CREATE VIEW v_lhsy_user AS 
SELECT * FROM LINK_NORTHSNOW.lhsy.dbo.sys_user;
SELECT * FROM v_lhsy_user;

查詢 Oracle 遠端資料 (注意雙點與大寫)

-- 格式:連結伺服器..Oracle使用者.資料表 (全大寫)
CREATE VIEW v_oracle_user AS 
SELECT * FROM LINK_ORA..NORTHSNOW.SYS_USER;
SELECT * FROM v_oracle_user;

關鍵點:LINK_ORA 後為 雙點 (..),Oracle 使用者與資料表名 必須全大寫,不支援同義詞查詢。

刪除連結伺服器

EXEC sp_dropserver '連結伺服器名稱', 'droplogins';

總結

掌握腳本化建立與查詢語法差異,能快速建立異構資料庫查詢環境,並納入自動化部署流程。Oracle 連結查詢的「雙點+大寫」規則是常見錯誤來源,務必銘記。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved