oracle 10g裝上後,建了個表寫入中文數據,發現通過工具DbVisualizer 6.5 寫入/讀取中文都正常,就sqlplus和PL/SQL Developer不正常.
初步懷疑是DbVisualizer本身定義了字集編碼,而sqlplus和PL/SQL Developer則沒有.無論怎麼樣,要正常顯示中文,就必須得服務器和客戶端編碼一致才行.於是檢查.
1.檢查服務器編碼:
執行SQL語法:
select * from v$nls_parameters;
也可以參照/home/oracle/.bash_profile 相關語言設置.
可以看到我的相關設置是:
LANG=zh_CN.GBK
NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
2.設置本地客戶端編碼:
進入 我的電腦,屬性,高級,環境變量,添加2項:
LANG=zh_CN.GBK
NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
如圖:
3.重新連接sqlplus,查看數據:
顯示正常.
4.PL/SQL Developer設置並重新連接:
在pl/sql developer的菜單->tools->preferences->user interface->fonts 中修改爲中文字體
重新連接,如圖:
顯示正常.OK!
oracle本地亂碼解決
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.