Plsql developer插入中文亂碼,plsqldeveloper

來源:互聯網
上載者:User

Plsql developer插入中文亂碼,plsqldeveloper


原文地址:http://yanwushu.sinaapp.com/plsql-developer-chinese-charactereset/


解決方案一

oracle字元集無法儲存中文字元。下面的語句查詢oracle字元集。

selectuserenv('language') from dual;

如果查詢結果支援中文字元(比如gbk,utf-8),那麼這個原因排除。否則應該重新設定oracle字元集為支援中文的字元集。具體方法請自行搜尋。


解決方案二

首先確認oracle字元集支援中文字元,然後看plsql字元集和oracle字元集是否相同,如果二者字元集不同,會造成plsql中插入的中文到資料庫中變成亂碼。設定plsql developer的字元集,tools->preferences->fonts->main fonts->字元集,如:


解決方案三

如果你的plsql沒有設定中文字元集的功能,比如我的plsql developer10就沒有,那可以用設定環境變數的方式解決此問題,在環境變數中添加一個名稱為NLS_LANG值為你oracle字元集(比如SIMPLIFIED CHINESE_CHINA.ZHS16GBK)的系統變數,重啟plsqldeveloper,問題即可解決。


寫在後面

解決此問題的關鍵在與理解字元集的含義,對此概念不清楚的同志可以自行搜尋。關於修改環境變數為何能解決此問題,涉及到oralce對字元集選擇的優先順序問題,有興趣的同志可以深入研究。


 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.