我們知道SQL Server和Oracle其實很多原理都類似.特别是一些常用的SQL語句都是按照标準來.是以它們也可以有一定的互操作性的.這裡講一下,怎麼配置讓SQL Server連接配接一個Oracle.然後你在SQL Server中也能檢視Oracle中表的内容.
我先說下我使用的環境:
作業系統: win7 64 ,SQL Server 2008 ,Oracle Server 11gr1
另外進行配置前還要注意幾點,是在SQL Server伺服器所在地方進行配置.(用戶端能不能我沒試過,不确定).Oracle的server随便在哪無所謂了,隻要你能連接配接得到就行.然後就是要裝好oracle的用戶端.
第一步 安裝好oracle用戶端,并配置好TNS資訊
先配置好oracle的TNS連接配接資訊.這個跟正常情況使用oraclep完全一樣
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 123.456.176.42)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
第二步,配置odbc資訊
配置好odbc連接配接資訊,sql server肯定不能直接調用oracle的用戶端去連接配接的,隻能通過odbc的方式間接的去連.在你平時敲cmd的地方敲入odbc打開下面界面.你先去driver那地方看下有oracle的driver了不.裝好了oracle的用戶端的話肯定就會有的.
然後選user DSN,點Add ,選擇上一個畫面中看到的oracle driver.
出現這頁面後,在Data Source Name随便輸入一個名字,這個名字就要後面sql server要用到的.TNS Service Name的下拉清單中就是oracle中配置好的TNS資訊,如果你開始沒有配置的話這裡就為空的.你選一個TNS名字後,可以點下test connection驗證下看連接配接上了不.
第三步 在sql server中配置
在前面建立好odbc資料源後就可以在sql server中配置了啊.先打開management studio.在server objects下面有個Linked Servers,選中它并右擊new linked server.打開如下頁面.在linked server中輸入一個名字,随便取的,在後面執行sql時會用到這名字.provider就選Oracle Provider for OLE DB. product name就填oracle
Data source就是你開始配置odbc時取的名字.其他地方就不用管了.然後再點下Security會彈出另一個頁面
在此頁面最下面的地方輸入使用者名和密碼,然後點OK
于是大功告成了.你在Linked Servers下面會看到ORA_ARWEN.下面就來執行幾個SQL驗證下
select * from openquery(ORA_ARWEN,'select sysdate from dual');
--select * from openquery這是固定的格式,然後在括号中先寫上你剛建立好的名字.這裡是ORA_ARWEN,然後用一個單引号把一個sql語句括起來.此Sql語句就是在Oracle中要執行的Sql語句.select sysdate from dual是oracle擷取目前時間的sql.假如你連接配接的那使用者arwen下面有表info,你也可以寫select * from info