7. 重新啟動SQL Server 2008
8. 此時(shí)應(yīng)該可以使用了,但還是要確認(rèn)一下防火墻。將SQLServr.exe(C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe)添加到允許的列表中
二、 安裝Oracle客戶端軟件
可以去Oracle官網(wǎng)下載,比如“10201_client_win32”
安裝成功后,在Oracle客戶端安裝目錄下的/network/admin/tnsnames.ora配置所要連接的服務(wù)器的相關(guān)信息,比如:
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.90)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
如果admin目錄下沒有“tnsnames.ora”,新建一個(gè)文本文件,改名為“tnsnames.ora”
三、 添加Windows的ODBC數(shù)據(jù)源
1. 開始->管理工具->數(shù)據(jù)源(ODBC)
有些“開始”菜單中沒有放“管理工具”連接,則可以先到“控制面板”中,然后選擇“性能和維護(hù)”,就可以找到“管理工具”了
2. 在“用戶DSN”選項(xiàng)卡或者“系統(tǒng)DSN”選項(xiàng)卡下,點(diǎn)擊“添加”,選擇“Microsoft ODBC for Oracle”后點(diǎn)擊“完成”
3. 填寫相關(guān)信息
數(shù)據(jù)源名稱、服務(wù)器名稱與“tnsnames.ora”中配置的一樣,其他兩項(xiàng)可以忽略
填好后,點(diǎn)擊“確定”
四、 在SSMS中創(chuàng)建鏈接服務(wù)器
1. 在SSMS中,展開已經(jīng)連接上的某數(shù)據(jù)庫引擎,依次選擇服務(wù)器對象->鏈接服務(wù)器,在“鏈接服務(wù)器”上點(diǎn)右鍵,選擇“新建鏈接服務(wù)器”
2. 在“常規(guī)”選項(xiàng)卡上按照如下填寫:
“鏈接服務(wù)器”,隨便取個(gè)名字
“訪問接口”和“產(chǎn)品名稱”如上圖所示,不要做任何改變,包括大小寫
“數(shù)據(jù)源”與“tnsnames.ora”中配置的一樣,也即與“添加Windows的ODBC數(shù)據(jù)源”步驟中填寫的一樣
“訪問接口字符串”,按照圖上的格式來填寫,或者“ID=username;Password=userpasswd”也行,這里的username和userpasswd為登錄所要連接的Oracle數(shù)據(jù)庫所使用的用戶名和密碼;這里一定要填寫,雖然在“安全性”選項(xiàng)卡中也會填寫
3. 切換到“安全性”選項(xiàng)卡,做如下配置
填寫用戶名和密碼,與上一步所填的用戶名和密碼一致
點(diǎn)擊“確定”,完成
4. 查看Oracle中的數(shù)據(jù)
此時(shí),在“鏈接服務(wù)器”下面,會出現(xiàn)剛剛創(chuàng)建的鏈接服務(wù)器,展開,可以看到所有的表和視圖,但是只能看到表名,不能查看字段
要查詢可以右鍵點(diǎn)擊某表,選擇:編寫腳本為->Select 到->新查詢編輯器窗口
SQL的寫法有兩種
a) 使用T-SQL語法:
SELECT * FROM test..username.表名
注意:在這種方式下取數(shù),如果在oracle中聲明表的時(shí)候表明用了引號,此處的表明必須和oracle中一致,否則全部使用大寫,不然會提示找不到表。(此處浪費(fèi)時(shí)間若干。。。)
b) 使用PLSQL語法:
SELECT * FROM openquery(test,'SELECT * FROM test.username.表名')
c)第二種訪問方式比第一種約快50%;第二種訪問方式跟直連ORACLE的速度相當(dāng);
d)如果需要訪問的column中使用沒有精度的數(shù)據(jù)類型,這兩種查詢方式都可能會報(bào)錯(cuò),這是ORACLE的BUG,無法修正,只能通過查詢語句的特殊處理規(guī)避這一問題:
e)在sql server 中有 'msdaora' 和'OraOLEDB.Oracle' 訪問接口,右鍵屬性更改下訪問接口選項(xiàng),將“僅零級”前面的√去掉。