Windows 2008 server 64位英文操作系統下PL/SQL中文亂碼


參考以下3博文,大部分能解決。

http://blog.csdn.net/qq378527566/article/details/7816768

http://oracle.chinaitlab.com/PLSQL/798196.html

http://blog.csdn.net/jkunzhang/article/details/6094269


==================第一篇:解決PLSQL中文亂碼問題=========================


在日文環境下,安裝PLSQL後,打開創建的數據庫表,所有中文/日語漢字註釋全部亂碼。如下圖:



原因:

這是因爲當前PLSQL所使用的編碼格式和文本的編碼格式不同導致的,通常在非Unicode或UTF-8的編碼環境下,中文等非西方文字會出現亂碼。


解決辦法:

設置環境的文本編碼。

在工具菜單欄下點擊偏好設定菜單項,打開個人偏好設定對話框。在左側的列表中選擇用戶接口下的字體設置(Fonts),則右側切換到相關設置頁。如下圖。


分別點擊Select...按鈕和Main Font...按鈕,選擇自己喜歡的字體,最重要的是選擇文字編碼設置到中文或日語環境。下圖爲默認的設置。


其中歐文(西文)爲默認的設置,也就是此設置導致了中文/日語漢字亂碼,應將其設置爲日本語或中文等編碼。但如果你選擇的字體爲西文編碼的,可能不會在文字編碼下拉列表中出現有關中文/日本語的設置。如下圖:



那個中央什麼的,不是中國語。想要出現有關中文或日本語的選項,首先要選擇一個支持該編碼的字體。如下圖:



如上分別在四個字體設置的對話框中選擇相應的字體,設置編碼爲日本語,點擊OK,在個人偏好設置對話框中點擊OK,就一切OK了。


by 唐加利

==================第2篇:PL/SQL Developer 中文亂碼解決=================

1。select * from v$nls_parameters
  查詢nls的參數,獲得數據庫服務器端的字符編碼
  NLS_LANGUAGE
  NLS_CHARACTERSET
  2。修改本地環境變量,設置
  NLS_LANG = SIMPLIFIED CHINESE.ZHS16GBK //這個是我們的數據庫字符編碼
  NLS_LANG格式:
  NLS_LANG = language_territory.charset
  有三個組成部分(語言、地域和字符集),每個成分控制了NLS子集的特性。其中:language 指定服務器消息的語言。
  territory 指定服務器的日期和數字格式。
  charset 指定字符集
  也可更改相應註冊表項
  HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE\NLS_LANG
  需要保證要設置客戶端字符集與服務器端字符集一致。
  以上都是更改PL/SQL Developer的字符編碼方式。


==================第3篇:PLSQL中文亂碼問題=================

機器 中病毒 後,plsql數據庫中的字段成了亂碼 
重裝 系統後,plsql中查詢出來的字段仍爲 亂碼
plsql 中顯示的數據和數據庫的中文字段全是亂碼 
服務器查詢出來的數據,如果中文顯示的就是亂碼 。

plsql亂碼 如何解決?

設置環境變量:

NLS_LANG SIMPLIFIED CHINESE_CHINA.ZHS16GBK
  

解決PL/SQL和TOAD中文亂碼問題: 
regedit->hkey_local_machine->software->oracle->home0->NLS_LANG value:AMERICAN_AMERICA.WE8ISO8859P1” 

那位朋友遇見過同樣的問題,請指教,謝謝了!

創建一個名爲“NLS_LANG”的系統環境變量,設置其值爲“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,然後重新啓動 pl/sql developer,這樣檢索出來的中文內容就不會是亂碼了。如果想轉換爲UTF8字符集,可以賦予“NLS_LANG”爲 “AMERICAN_AMERICA.UTF8”,然後重新啓動 pl/sql developer。其它字符集設置同上



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章