1. 程式人生 > >使用PL/SQL Developer 報錯:ORA-01460 :轉換請求無法實現或不合理 解決辦法!!!

使用PL/SQL Developer 報錯:ORA-01460 :轉換請求無法實現或不合理 解決辦法!!!

剛安裝好的oracle9i,使用pl/sql developer連線上去操作表的時候就報錯:ORA-01460 :轉換請求無法實現或不合理 。

問題原因是:客戶端和服務端字符集不一致。

事後回想一下,產生問題的原因應該是,事前裝過oracle10g,沒有解除安裝乾淨,後面又裝oracle9i設定的字符集和oracle10g不一致。

解決辦法:

1.通過執行

select * from V$NLS_PARAMETERS
where parameter in('NLS_LANGUAGE','NLS_ISO_CURRENCY','NLS_CHARACTERSET');

檢視伺服器字符集。

-------------------------------------------

PARAMETER                                                        VALUE
---------------------------------------------------------------- ----------------------------------------------------------------
NLS_LANGUAGE                                                     SIMPLIFIED CHINESE
NLS_ISO_CURRENCY                                                 CHINA
NLS_CHARACTERSET                                                 ZHS32GB18030

2.修改登錄檔:

通過regedit修改登錄檔(僅討論windows版)進行客戶端的字符集

位置\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0\NLS_LANG (右鍵修改)

修改為[NLS_LANGUAGE ]_[NLS_ISO_CURRENCY].[NLS_CHARACTERSET],

如上面的的伺服器,應該修改為:SIMPLIFIED CHINESE_CHINA.ZHS32GB18030

ok了!!!