環境:
oracle伺服器11g×64,本機Windows7×64,安裝有64的oracle用戶端,同時還有免安裝的Oracle Instant Client×32(要用pl/sql又不想裝32的oracle用戶端,這個就必須要有)。
問題:
使用報表設計器自帶的資料源配置oracle連接配接時,不知何故總是提示如圖錯誤:

按照網上的方法注冊子產品,結果不行。報表設計器幫助手冊上以SQLserver和MySQL作為示例來講解,也沒有給出常見問題解決辦法,隻能自己搗騰一下了,其中遇到一些難題,磕磕碰碰,不斷試驗不斷百度,最後成功摸索出兩種方法連接配接。
A. microsoft ole db provider for oracle
采用這個方法連接配接的時候,遇到錯誤“未找到oracle用戶端和網絡元件。這些元件是由Oracle公司提供的,是Oracle7.3.3版(或更高)客戶軟體安裝的一部分。”如下圖:
網上一搜,解決這個問題的辦法就出來了取其一種:①找到oracle的安裝路徑,設定everyone的完全控制權限;②在環境變量path中添加E:\Oracle Instant Client 32-bit Version 12.1.0.1.0(因為我的報表設計器和pl/SQL都不能用oracle64位用戶端故特别下載下傳OracleInstant Client×32,根據實際情況,你可能添加32位Oracle_home的路徑)
重新開機電腦連接配接成功:
B. microsoft ole db provider for odbc drivers
64位的資料源配置檔案C:\WINDOWS\SYSTEM32\ODBCAD32.EXE
32位的資料源配置檔案C:\WINDOWS\SYSWOW64\ODBCAD32.EXE
注意:
Ⅰ檔案夾名字尾雖然分别是32和64,實際上提供的驅動卻是相反的,WoW64會通過虛拟化機制重定向32位應用程式運作所需的DLL。
Ⅱ控制台—管理工具提供的是64位的資料源快捷方式,但作業系統預設提供是32位的驅動接口供外部程式調用。這也是通常我們通過控制台添加了資料源之後應用程式仍舊提示如下錯誤的原因:
一個比較好的辦法是在控制台--管理工具當中添加32位的快捷方式并區分二者:
再根據應用程式的支援情況選擇究竟用32的還是64的。
二者比較,32位的提供中文界面驅動很多,64位的要高大上一些并提供連接配接測試:
總結,我們要多動腦筋多思考。生産生活中咱們遇到的問題可能别人也遇到過,百度一下,現成的解決問題的方法能為我們節省不少時間當然好,同時自己也要勤于思考,這樣,哪天遇到了别人都沒有遇到的問題,也能想出解決的辦法。