[Oracle整理]ORA-12705(字符集問題)


說明:本內容是工作用到的知識點整理,來自工作中和網絡。
代碼於Oracle9上測試。

 

環境不同

DB server相同

AP server相同

AP server上的DOTNET 版本相同——都是.NET 3.5SP1

建立相同的環境

客戶端不相同,我的計算機上裝的是10.2.0。AP server上裝的是9.2.0

再次測試

出現ORA-12705錯誤

clip_image002

關於ORA-12705

第一種解釋

ORA-12705語系設定錯誤

在regedit的\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE下找到NLS_LANG機碼予以刪除就可以work

出現ORA-12705的錯誤訊息,原因是NLS_LANG在regedit機碼值是NA

為語系的編碼,是我在自己的計算機上安裝了Oracle Client后又移除所遺留下來的.

因此只要在regedit的\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE下找到NLS_LANG機碼予以刪除就可以work

第二種解釋

在環境變量中加一項:NLS_LANG , 值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

100%解決你的問題

第三種解釋

Oracle Instant Client ORA-12705 錯誤

問題: 使用Oracle Instant Client 出現 ORA-12705: Cannot access NLS data files or invalid environment specified 錯誤。

如果是Windows平台,注冊表里 \HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 查找鍵 NLS_LANG,這個鍵由Oracle標准客戶端安裝創建, 值是 NA 。這個導致了 ORA-12705錯誤。解決方法就是改名 NLS_LANG。

Linux下 如果環境變量 NLS_LANG 值是NA 會引起 ORA-12705 錯誤,解決方法是刪除這個變量,如/home/oracle1/.profile中的

export NLS_LANG="SIMPLIFIED_CHINA.ZHS16GBK"

給注釋掉.

找出上述現象

clip_image004

修改NLS_LANG

改為AMERICAN_AMERICA.ZHT16BIG5,如下圖。

Oracle 9i設定

clip_image006

Oracle 10g設定

clip_image008

學習資料

1 http://space.itpub.net/8475224/viewspace-692675

2 http://blog.chinabyte.com/a/500815.html


免責聲明!

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



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