注冊“Oracle Provider for OLE DB”和創建鏈接服務器
在sql server 數據庫上創建鏈接服務器,連接oracle數據庫,訪問接口需要設置為:“Oracle Provider for OLE DB”。
如果電腦上沒有這個驅動,安裝一個完整的Oracle11gR2程序是一個有效的方法,但這個64位版本的安裝包有2個多G,
相當龐大,如果僅僅是為了建立鏈接服務器,完全沒必要裝這么個龐然大物。其實我們只需要下載ODAC壓縮包即可。
下面總結如何注冊:“Oracle Provider for OLE DB”這個驅動:
Part1.注冊“Oracle Provider for OLE DB”:
1.下載ODAC112030Xcopy_x64.zip:
下載地址:http://download.csdn.net/detail/u014019244/9061209
2.解壓ODAC112030Xcopy_x64.zip(我解壓到了C盤下):
3. 在命令行界面進入解壓文件夾后運行“install.bat oledb c:\oracle odac”安裝:
4. 在系統環境變量中,為Path添加“C:\oracle;C:\oracle\bin;”
(計算機屬性-高級系統設置-高級-環境變量-系統環境變量-Path):
選中“環境變量”中“系統變量”中的“Path”,點擊“編輯”按鈕,
在最前面添加“C:\oracle;C:\oracle\bin;”
5.重啟計算機。
做完以上操作后,打開本機SQL Server Management Studio,新建鏈接服務器時,
“訪問接口”下拉框會出現“Oracle Provider for OLE DB”。
Part2.新建鏈接服務器:
- 打開本機SQL Server Management Studio連接到本機數據庫;
- 展開“服務器對象”;
- 選擇“鏈接服務器”-右鍵-“新建鏈接服務器”;
- 在“新建鏈接服務器”的窗口里,選擇“常規”;
- 輸入“鏈接服務器名稱”(檢驗用英文字符名稱);
- “服務器類型”選擇“其他數據源”;
- “訪問接口”選擇“Oracle Provider for OLE DB”;
- “產品名稱”輸入“oracle”;
- “數據源”輸入:(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xxx.xxx)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = orcl)))
其中host是oracle數據庫所在的服務器的ip;
10.在“安全性”界面,勾選“使用此安全上下文建立連接”,輸入“遠程登錄”和“使用密碼”(oracle的登錄名和密碼):
11.“服務器選項”的界面的設置如下圖:
查詢測試“鏈接服務器”是否成功創建,如下圖:
sql server數據庫使用鏈接服務器查詢oracle數據庫的語法:
SELECT * FROM OPENQUERY(SWAPDB,'select xxx from 表名')
如果出現錯誤“無法創建鏈接服務器 "xxx" 的 OLE DB 訪問接口 "OraOLEDB.Oracle" 的實例。 (Microsoft SQL Server,錯誤: 7302)”
,請參考下面這篇文章解決: