1. 程式人生 > >資料庫字符集(AL32UTF8)和客戶端字符集(2%)不同

資料庫字符集(AL32UTF8)和客戶端字符集(2%)不同

       今天在安裝Oracle資料庫時出現的一個問題,“資料庫字符集(AL32UTF8)和客戶端字符集(2%)是不同的。字符集轉化可能會造成不可預期的後果”。

        上網查了一些資料得知Oracle資料庫的字符集問題不算是大問題,但也是一個頭疼的問題。這是因為有這麼三個原因:一是Oracle資料庫在安裝時指定好字符集之後一般不能更改,二是字符集問題涉及伺服器與客戶端之間的存取問題,三是Oracle資料庫遷移時也會跟字符集非常相關。最好的,最不容易出字符集錯誤的就是:將資料庫字符集、客戶端字符集、客戶端作業系統NLS_LANG引數三個地方作同樣的設定。

可以使用select * from nls_database_parameters where parameter='NLS_CHARACTERSET' 檢視服務端資料庫字符集。

解決方案一:
1.右擊電腦屬性 
2.新建系統變數
3.名字  NLS_LANG  值:  american_america.AL32UTF8
4.再次登入 OK 

解決方案二:修改登錄檔的值
1.windows+R開啟執行視窗,輸入regedit開啟登錄檔。
2.HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\oracle\KEY_OraClient11g_home1中修改NLS_LANG為SIMPLIFIED CHINESE_CHINA.AL32UTF8


3.再次登入 OK