Oracle 32位和64位版本之間的問題

先前遇到了一系列的問題,結果把32位和64位的Oracle都裝進來了。數據庫

但因爲項目的dll使用的是32位的,用64位的Oracle在運行時會出現        「未能加載文件或程序集「Oracle.DataAccess」或它的某一個依賴項。試圖加載格式不正確的程序。」     這個錯誤。app

而改用32位Oracle後,開啓PLSQL時又出現了   「error while trying to retrieve text for error ORA-01804」   這個錯誤,致使沒法鏈接數據庫。blog

解決方法:變量

     32位和64位的Oracle都裝了(不知道有沒有影響,實際上在後面配置環境變量時只使用到了32位的Oracle,但事實證實PLSQL鏈接數據庫須要64位的Oracle)cli

     關鍵來了,以前按照網上的方法配置環境變量,結果在項目運行時和PLSQL鏈接數據庫時總有其中一個會出現上面說的錯誤。配置

     最後,問題仍是回到了環境變量上,由於項目是32位的dll,因此配置時,路徑都是用的32位的Oracle,這時,項目運行沒有問題,但用PLSQL鏈接數據庫時會出現  「error while trying to retrieve text for error ORA-01804」  這個錯誤,個人解決方法:將  「ORACLE_HOME」  這個環境變量刪除便可。network

 

     Ps:程序

         出錯緣由推測:本來 「ORACLE_HOME」 的變量值爲  「D:\app\Administrator\client\Administrator\product\12.1.0\client_1\network\admin」  這是指向32位Oracle的路徑,致使我使用的PLSQL鏈接數據庫時出錯。而先前使用指向64位Oracle的路徑時,個人PLSQL可以正常鏈接數據庫。我猜想在刪除環境變量  「ORACLE_HOME」  後,PLSQL會自動尋找合適的Oracle版本使用(同時裝了64位Oracle也許是伏筆?)。方法

   若是按上述方法PLSQL鏈接數據庫時仍是報這個錯,就嘗試將環境變量  「ORACLE_HOME」  的變量值改成指向64位Oracle的路徑(個人是「D:\app\client\Administrator\product\12.1.0\client_1\network\admin」 )。im

               附上個人環境變量配置:

          Path:  D:\app\Administrator\client\Administrator\product\12.1.0\client_1\BIN

相關文章
相關標籤/搜索