本來一腦子心思想使用Oracle OCCI接口進行編程的,一個原因是自己比較喜歡純C++編程,二是考慮到程序是要往Linux服務器移植的,少走冤枉路。結果搞了N久沒有把Oracle Instant Client的OCI/OCCI搞好,就差最后一個環境沒有配好了。因項目緊迫,只好暫時放下,先湊合用這ODBC吧,結果發現其實Linux 也可以使用ODBC(真是孤陋寡聞,慚愧啊!)。
也是參考了前人的成功腳步,把ODBC的驅動給安裝成功,為了記下以便日后重新搞一遍(唉,麻煩,老是做同樣的工作,還花費那么多同樣的時間);
我使用的Windows 7,64位的操作系統。
1.下載驅動包
base包:instantclient-basic-windows.x64-11.2.0.3.0.zip
ODBC包:instantclient-odbc-windows.x64-11.2.0.3.0.zip
我下載的是11.2.0.3版本的,兩個包的版本必須要一致才行。http://www.oracle.com/technetwork/topics/winx64soft-089540.html
2.解壓安裝
解壓上面兩個包,把解壓后的文件放在同一個目錄(合並),注意2個包解壓后的所有文件必須放在一個目錄下,假設是D:\\instantclient_11_2
使用管理員權限打開CMD,進入該目錄,運行odbc_install.exe進行安裝。
提示安裝成功后,運行64位ODBC驅動配置程序“C:\windows\SysWOW64\odbcad32.exe”
注意:64位系統的odbcad32.exe的目錄應該在SysWOW64。
不出意外,ODBC的驅動已經安裝成功了,打開ODBC數據源管理器就可以看到已經有ODBC驅動程序項:
3.選擇ODBC配置DSN,如下圖,可以根據實際的情況天下Oracle ODBC Driver Configuration。
測試連接成功后,就可以使用ODBC連接數據庫了,Enjoy it!
加一句,我使用的ADO來封住ODBC連接。ODBC連接串測試成功和能夠使用的是:Provider=MSDASQL.1;Persist Security Info=False;User ID=avls;Password=1;Data Source=orcl;
還有發一個Oracle ODBC連接串匯總:http://www.connectionstrings.com/oracle/ 那么多人貢獻真好!
再說一句:配置Oracle ODBC驅動必須需要配置環境變量,就是讓驅動能夠找到D:\instantclient_11_2\NETWORK\ADMIN 下面的tnsnames.ora tnsnames.ora文件包含了連接Oracle服務器的連接串;
只需要配置ORACLE_HOME環境變量的值為D:\instantclient_11_2即可。已經經過測試,嘻嘻。謝謝,不用誇獎,有用得很。
關於環境變量,還有一個需要進行配置的就是ODBC驅動的語言設置,NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 目前測試可以解決SQL通過ODBC查詢中文亂碼的問題。
參考連接:http://bbs.51cto.com/thread-1037322-1.html