C# System.Data.OracleClient requires Oracle client software version 8.1.7 or greater


好好的程序,突然出現了錯誤,原因是:System.Data.OracleClient requires Oracle client software version 8.1.7 or greater,很是奇怪

服務器上的oracle明明是10g,程序出錯就也不提示8.1.7啊,百度了一下,發現有解決方法如下:

原來當Oracle 9.2運行在NTFS的分區上時,對於某些非administrator組的用戶,ORACLE_HOME 目錄是不可見的,而在windows server 2003下asp.net應用使用的帳戶是netword service,因此無法創建oracle連接,只要重設一下ORACLE_HOME目錄的權限就可以了。步驟如下:
1、以管理員的用戶登錄;
2、找到ORACLE_HOME文件夾(我的是C:\oracle\ora92),點右鍵,選屬性--安全,在組或用戶欄中選“Authenticated Users”,在下面權限列表中把“讀取和運行”的權限去掉,再按應用;重新選上“讀取和運行”權限,點擊應用;選權限框下面的“高級”按鈕,確認“Authenticated Users”后面的應用於是“該文件夾、子文件夾及文件”,按確定把權限的更改應用於該文件夾;
3、重新啟動計算機,讓權限設置生效(請注意,這一步很重要);
4、登錄后運行asp.net應用,正常取得Oracle數據庫的數據。  
看到這里,我想起來了,於是去看了看環境變量中的oracle路徑,發現在果然是這樣。原來前幾天在服務器上,突然發現在有兩塊硬盤,一直沒有用,連盤符也沒有分,光驅在D盤,oracle裝在E盤。看着心里別扭,就把光驅調到最后,設為H盤,E盤則改為D盤,新加的兩個硬盤,分別有E、F。 

硬盤盤符調好了,但是環境變量里面的路徑沒變,oracle的路徑還是在E盤,沒辦法,只好又把硬盤盤符恢復成之前的,問題解決。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM