本文以 SQL Server 2000 為例,詳細說明如何透過「連結伺服器」功能,讓 SQL Server 能夠直接查詢與操作遠端 Oracle 資料庫的資料。適用於 Windows 平台,目標 Oracle 可部署於 Windows、Unix/Linux 等任意作業系統。
編輯 $ORACLE_HOME/network/admin/tnsnames.ora,新增目標資料庫的連線描述。範例如下:
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.90)(PORT = 1521))
)
(CONNECT_DATA =
(SID = blue)
(SERVER = DEDICATED)
)
)
說明: TEST 為連線別名,後續 ODBC 設定會用到;HOST、PORT、SID 請依實際環境填寫。
TEST)。TEST)。ORA_LINK)。Microsoft OLE DB Provider for Oracle。TEST)。User ID=oracle_user;Password=oracle_pwd (或 UID=...;PWD=...),對應 Oracle 端的帳密。[連結伺服器名]..[Oracle結構名].[資料表名]SELECT * FROM ORA_LINK..SCOTT.EMP。tnsnames.ora 語法、防火牆、Listener 狀態。SELECT ANY TABLE 或該表的查詢權限。OPENQUERY 下推查詢至 Oracle 執行。