先前遇到了一系列的問題,結果把32位和64位的Oracle都裝進來了,
但由于專案的dll使用的是32位的,用64位的Oracle在運行時會出現 “未能加載檔案或程式集“Oracle.DataAccess”或它的某一個依賴項,試圖加載格式不正確的程式,” 這個錯誤,
而改用32位Oracle后,開啟PLSQL時又出現了 “error while trying to retrieve text for error ORA-01804” 這個錯誤,導致無法連接資料庫,
解決方法:
32位和64位的Oracle都裝了(不知道有沒有影響,實際上在后面配置環境變數時只使用到了32位的Oracle,但事實證明PLSQL連接資料庫需要64位的Oracle)
關鍵來了,之前按照網上的方法配置環境變數,結果在專案運行時和PLSQL連接資料庫時總有其中一個會出現上面說的錯誤,
最后,問題還是回到了環境變數上,因為專案是32位的dll,所以配置時,路徑都是用的32位的Oracle,這時,專案運行沒有問題,但用PLSQL連接資料庫時會出現 “error while trying to retrieve text for error ORA-01804” 這個錯誤,我的解決方法:將 “ORACLE_HOME” 這個環境變數洗掉即可,
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” ),
附上我的環境變數配置:
Path: D:\app\Administrator\client\Administrator\product\12.1.0\client_1\BIN

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/245621.html
標籤:其他
