PLSQL中文顯示亂碼,可能是oracle客戶端和服務器端的編碼方式不一樣。
在這里,我們使用的是服務器上的Oracle,不是本機的Oracle,按照以下兩個步驟進行:首先要查詢ORACLE服務器的語言、地域和字符集,然后將查詢結果設置為本地的環境變量:NLS_LANG。具體如下:
1. 查詢ORACLE服務器的語言、地域和字符集
select * from V$NLS_PARAMETERS;
查詢結果如下圖,
下圖NLS_LANGUAGE 表示“語言”,NLS_TERRITORY 表示“地域”,NLS_CHARACTSET 表示“字符集”,將他們三個按照“語言_地域.字符集”的格式拼接起來,就有了“AMERICAN_AMERICA.ZHS16GBK”(注意:這里要根據你自己的ORACLE服務器的這三個值進行拼接哦~不要簡單的復制粘貼)
2.在本地環境變量中加入NLS_LANG
如上圖,本地的環境變更為 NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
3.重啟PL/SQL即可.
------------恢復內容結束------------