又到了搞 Oracle 的時刻了...
想要透過 OLE DB 連 Oracle ..
查了一下. 必須安裝 ODAC , 因此到官網下載
http://www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html
裝了 Oracle Data Access Components (ODAC) 11.2.0.3.0
安裝完畢後..
把 Network\Admin\tnsnames.ora 複製回 c:\Oracle\ 下的 Network
隨便建立一個 udl 檔案 (內容空白)
點兩下... 開始產生 Connection String ..
PS:上圖這個步驟過不了的話..請檢查環境變數 PATH, 是否有加入 %ORACLE_HOME%,以及 %ORACLE_HOME%/bin
例如: 裝在 c:\Oracle 則必須加入 C:\Oracle;C:\Oracle\bin; (這樣 Oracle 的那些API dll才能夠被引用到)
資料來源輸入:tnsnames.ora 裡面設定的 Service Name ..
出現錯誤: ORA-12154: TNS:could not resolve the connect identifier specified
PS:我用 Oracle SQL Developer Release 3.0 (3.1.06.82) 是可以正常連線的!!!
找了很多相關資料..
還是解決不了
靈機一動.. 輸入機器名稱試試..
出現錯誤ORA-12504: TNS:listener was not given the SERVICE_NAME in CONNECT_DATA
錯誤訊息居然不一樣了...提示沒給 SERVICE_NAME..
以這個線索又下去搜尋..找到這種寫法..
[機器名稱]:[Port]/[SERVICE NAME]
"連線成功" ... 多令人感到愉悅的四個字.....
不過這已經是兩小時之後發生的事了...囧~~~
不太懂為何不把資料來源拆成
Server Name ,Port, Service Name
三個 TextField 讓人輸入
這樣不就不會搞混了..
Oracle ..真是搞不懂你....我太肉了...暈..
註:
1.ODAC 裡面含Oracle Instant Client 所以就不用先裝"龐大"的 Oracle Client
2.務必檢查一下環境變數.PATH. 是否補上Oracle 的相關設定,例如安裝在 c:\oracle 下, PATH 必須要有 C:\Oracle;C:\Oracle\bin;
3.如果使用的 Oracle server版本不是太舊(9i就太舊了)的話, 建議抓
ORACLE SQL Developer 來用
http://www.oracle.com/technetwork/developer-tools/sql-developer/overview/index.html
比內建的 SQL Plus 好用一百倍..
如果是 9i ..那就建議使用 PLSQL Developer
http://download.cnet.com/PL-SQL-Developer/3000-10254_4-10012692.html
4.Oracle 與server連線的一些設定都在 tnsnames.ora 內,這個檔案務必保存好
以上~ 打完收工