通過PL/SQL中文字段顯示亂碼或者導出數據出現亂碼,原因是數據庫的編碼格式和PL/SQL的編碼格式不統一導致。
查看ORACLE數據庫字符集:
select userenv('language') from dual;
查詢結果:
SIMPLIFIED CHINESE_CHINA.AL32UTF8
SIMPLIFIED CHINESE_CHINA.ZHS16GBK (我的數據庫結果)
修改PL/SQL的編碼格式:
1. 在windows中創建一個名為“NLS_LANG”的系統環境變量,設置其值為“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”。
2. 重啟PL/SQL,這樣檢索出來的中文內容就不會是亂碼了。
如果想轉換為UTF8字符集,可以賦予“NLS_LANG”為 “AMERICAN_AMERICA.UTF8”,然后重新啟動 PL/SQL。其它字符集設置同上。