解解決oracle亂碼的問題:
是不是經??匆姼魇礁鳂拥膩y碼,看見頭就大了,大家別怕,所有的問題都會有一個甚至不止一個的解決方案,
有句名言說的好:萬法不離其蹤。網上大部分把工具的亂碼和代碼操作的亂碼混為一談,方案看了一大堆都是一個粘貼一個的,沒有一點創新,于是今天出這篇博客。
以下方案服務端字符集編碼是:SIMPLIFIED CHINESE_CHINA.US7ASCII? 測試ok,其他編碼的可以參考
一.工具亂碼:
使用PLSQL Developer查詢或者編輯的時候出現??的時候:
原因:客戶端機和服務器上的字符集不一致
解決:
先查詢服務端的字符集編碼,然后將客戶端的修改一直即可;
1.查詢服務的字符集:
2.通過工具查看客戶端的字符集編碼:
打開工具:help-support info
3.設置環境變量(系統環境變量):
NLS_LANG=SIMPLIFIED?CHINESE_CHINA.US7ASCII(設置的編碼必須和服務端保持一致)
如果沒有生效,建議重啟電腦!
二.查詢亂碼:
?設置兩個:
1.修改環境變量:
NLS_LANG=SIMPLIFIED?CHINESE_CHINA.US7ASCII(設置的編碼必須和服務端保持一致)
2.修改注冊表:(為了保險起見,查找注冊表中的NLS_LANG所有的,避免有多個)
HKEY_LOCAL_MACHINESOFTWAREoracleKEY_OraDb11g_home1
如果沒有生效,建議重啟電腦!
三.插入亂碼:
?解決中…
四.導入或導出亂碼:
暫無
五.服務端修改編碼:(此方案慎重使用)
cmd sqlplus/nolog conn/as?sysdba; shutdown?immediate; startup?mount; alter?session?set?sql_trace=true; alter?system?enable?restricted?session; alter?system?set?job_queue_processes=0; alter?system?set?aq_tm_processes=0; alter?database?open; alter?database?character?set?ZHS16GBK; alter?database?character?set?internal_use?ZHS16GBK; alter?database?national?character?set?internal?ZHS16GBK;(如果報錯,可以不用理會) shutdown?immediate; startup;
推薦教程: 《Oracle教程》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦