字符集的理解與亂碼的解決 必須作業系統字符集
1>這種情況下不會產生亂碼。
作業系統字符集 <=NLS_LANG (客戶端字符集 ) <=資料庫字符集 charactor set example:ZHS16GBK,AL32UTF8
1〉資料庫字符集 charactor set example:ZHS16GBK,AL32UTF8
2〉客戶端字符集 登錄檔 NLS_LANG ,LINUX下表現為profile
3〉作業系統字符集 控制皮膚 或c:>chcp 返回程式碼936 對應zhs16gbk
當這三個字符集能自由正確轉換,都能找到對應關係,將不再產生亂碼。
注意應用程式所採用的NLS_LANG以及所使用的ORACLE_HOME
2>產生亂碼的解決方式:
1〉認定是否是真正的亂碼。顯示是亂碼不代表資料庫儲存了不正確的資料。
2〉
1>Language 訊息。 Territory:貨幣,數字,地區和計算星期和日期
速記:按照日期,星期(兩期)計算地區數字貨幣。
注意事項:
1>當客戶端字符集與資料庫字符集一樣,作業系統字符集和資料庫字符集不一樣時,一旦作業系統輸入字元在資料庫中找不到
相應對映的字元程式碼 ,這個時候亂碼產生了。。。
2>
資料的儲存實際上要經過至少兩次轉化才能儲存在資料庫中,但是當NLS_LANG和資料庫一致時,只需要從作業系統字符集轉化為資料庫字符集。
3〉理解超集和子集。v$nls_valid_values.
很多朋友經常問起Oracle字符集子集與超級的對應關係,我將從Oracle8.1.6到9.2.0的對應關係列舉在這裡供大家參考.參考文件Metalink Doc: 119164.1
尤其是在時,大家應該參考此對應關係:
8.1.6 Subset/Superset Pairs
===========================
A. Current Char set B. New Char set (Superset of A.)
------------------- --------------------------------
US7ASCII WE8DEC
US7ASCII US8PC437
US7ASCII WE8PC850
US7ASCII IN8ISCII
US7ASCII WE8PC858
US7ASCII WE8ISO8859P1
US7ASCII EE8ISO8859P2
US7ASCII SE8ISO8859P3
US7ASCII NEE8ISO8859P4
US7ASCII CL8ISO8859P5
US7ASCII AR8ISO8859P6
US7ASCII EL8ISO8859P7
US7ASCII IW8ISO8859P8
US7ASCII WE8ISO8859P9
US7ASCII NE8ISO8859P10
US7ASCII TH8TISASCII
US7ASCII BN8BSCII
US7ASCII VN8VN3
US7ASCII VN8MSWIN1258
US7ASCII WE8ISO8859P15
US7ASCII WE8NEXTSTEP
US7ASCII AR8ASMO708PLUS
US7ASCII EL8DEC
US7ASCII TR8DEC
US7ASCII LA8PASSPORT
US7ASCII BG8PC437S
US7ASCII EE8PC852
US7ASCII RU8PC866
US7ASCII RU8BESTA
US7ASCII IW8PC1507
US7ASCII RU8PC855
US7ASCII TR8PC857
US7ASCII CL8MACCYRILLICS
US7ASCII WE8PC860
US7ASCII IS8PC861
US7ASCII EE8MACCES
US7ASCII EE8MACCROATIANS
US7ASCII TR8MACTURKISHS
US7ASCII EL8MACGREEKS
US7ASCII IW8MACHEBREWS
US7ASCII EE8MSWIN1250
US7ASCII CL8MSWIN1251
US7ASCII ET8MSWIN923
US7ASCII BG8MSWIN
US7ASCII EL8MSWIN1253
US7ASCII IW8MSWIN1255
US7ASCII LT8MSWIN921
US7ASCII TR8MSWIN1254
US7ASCII WE8MSWIN1252
US7ASCII BLT8MSWIN1257
US7ASCII N8PC865
US7ASCII BLT8CP921
US7ASCII LV8PC1117
US7ASCII LV8PC8LR
US7ASCII LV8RST104090
US7ASCII CL8KOI8R
US7ASCII BLT8PC775
US7ASCII WE8DG
US7ASCII WE8NCR4970
US7ASCII WE8ROMAN8
US7ASCII WE8MACROMAN8S
US7ASCII TH8MACTHAIS
US7ASCII HU8CWI2
US7ASCII EL8PC437S
US7ASCII LT8PC772
US7ASCII LT8PC774
US7ASCII EL8PC869
US7ASCII EL8PC851
US7ASCII CDN8PC863
US7ASCII HU8ABMOD
US7ASCII AR8ASMO8X
US7ASCII AR8NAFITHA711T
US7ASCII AR8SAKHR707T
US7ASCII AR8MUSSAD768T
US7ASCII AR8ADOS710T
US7ASCII AR8ADOS720T
US7ASCII AR8APTEC715T
US7ASCII AR8NAFITHA721T
US7ASCII AR8HPARABIC8T
US7ASCII AR8NAFITHA711
US7ASCII AR8SAKHR707
US7ASCII AR8MUSSAD768
US7ASCII AR8ADOS710
US7ASCII AR8ADOS720
US7ASCII AR8APTEC715
US7ASCII AR8MSAWIN
US7ASCII AR8NAFITHA721
US7ASCII AR8SAKHR706
US7ASCII AR8ARABICMACS
US7ASCII LA8ISO6937
US7ASCII JA16VMS
US7ASCII JA16EUC
US7ASCII JA16SJIS
US7ASCII KO16KSC5601
US7ASCII KO16KSCCS
US7ASCII KO16MSWIN949
US7ASCII ZHS16CGB231280
US7ASCII ZHS16GBK
US7ASCII ZHT32EUC
US7ASCII ZHT32SOPS
US7ASCII ZHT16DBT
US7ASCII ZHT32TRIS
US7ASCII ZHT16BIG5
US7ASCII ZHT16CCDC
US7ASCII ZHT16MSWIN950
US7ASCII AL24UTFFSS
US7ASCII UTF8
US7ASCII JA16TSTSET2
US7ASCII JA16TSTSET
8.1.7 Additions
===============
US7ASCII ZHT16HKSCS
US7ASCII KO16TSTSET
WE8DEC TR8DEC
WE8DEC WE8NCR4970
WE8PC850 WE8PC858
D7DEC D7SIEMENS9780X
I7DEC I7SIEMENS9780X
WE8ISO8859P1 WE8MSWIN1252
AR8ISO8859P6 AR8ASMO708PLUS
AR8ISO8859P6 AR8ASMO8X
IW8EBCDIC424 IW8EBCDIC1086
IW8EBCDIC1086 IW8EBCDIC424
LV8PC8LR LV8RST104090
DK7SIEMENS9780X N7SIEMENS9780X
N7SIEMENS9780X DK7SIEMENS9780X
I7SIEMENS9780X I7DEC
D7SIEMENS9780X D7DEC
WE8NCR4970 WE8DEC
WE8NCR4970 TR8DEC
AR8SAKHR707T AR8SAKHR707
AR8MUSSAD768T AR8MUSSAD768
AR8ADOS720T AR8ADOS720
AR8NAFITHA711 AR8NAFITHA711T
AR8SAKHR707 AR8SAKHR707T
AR8MUSSAD768 AR8MUSSAD768T
AR8ADOS710 AR8ADOS710T
AR8ADOS720 AR8ADOS720T
AR8APTEC715 AR8APTEC715T
AR8NAFITHA721 AR8NAFITHA721T
AR8ARABICMAC AR8ARABICMACT
AR8ARABICMACT AR8ARABICMAC
KO16KSC5601 KO16MSWIN949
WE16DECTST2 WE16DECTST
WE16DECTST WE16DECTST2
9.0.1 Additions
===============
US7ASCII BLT8ISO8859P13
US7ASCII CEL8ISO8859P14
US7ASCII CL8ISOIR111
US7ASCII CL8KOI8U
US7ASCII AL32UTF8
BLT8CP921 BLT8ISO8859P13
US7ASCII AR8MSWIN1256
UTF8 AL32UTF8 (added in patchset 9.0.1.2)
Character Set Subset/Superset Pairs Obsolete from 9.0.1
=======================================================
US7ASCII AR8MSAWIN
AR8ARABICMAC AR8ARABICMACT
9.2.0 Additions
===============
US7ASCII JA16EUCTILDE
US7ASCII JA16SJISTILDE
US7ASCII ZHS32GB18030
US7ASCII ZHT32EUCTST
WE8ISO8859P9 TR8MSWIN1254
LT8MSWIN921 BLT8ISO8859P13
LT8MSWIN921 BLT8CP921
BLT8CP921 LT8MSWIN921
AR8ARABICMAC AR8ARABICMACT
ZHT32EUC ZHT32EUCTST
UTF8 AL32UTF8
Character Set Subset/Superset Pairs Obsolete from 9.2.0
=======================================================
LV8PC8LR LV8RST104090
網路上的這篇文章寫的法不錯,關於亂碼的,如下:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8568259/viewspace-2112820/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL字符集亂碼與解決方案MySql
- 程式設計師必須知道的字符集與字元編碼詳解程式設計師字元
- mysql字符集與亂碼MySql
- mysql亂碼現象及對字符集的理解MySql
- Linux字符集不統一導致亂碼的解決步驟(轉)Linux
- MySQL 字符集與亂碼與collation設定的問題?MySql
- mysql 字符集亂碼探究MySql
- 關於客戶端字符集與亂碼的困擾客戶端
- PLSQL Develop開啟不同字符集的資料庫中文亂碼解決方案SQLdev資料庫
- 深入理解Emoji(一) —— 字符集,字符集編碼
- rhel5的作業系統的LANG_locale_locate_資料庫字符集作業系統資料庫
- 關於Oracle,作業系統,客戶端字符集的最佳設定(zt)Oracle作業系統客戶端
- oracle 字符集亂碼本質驗證Oracle
- 【nls_character】中文字元亂碼問題與字符集的修改字元
- oracle imp字符集問題的解決Oracle
- 字符集例子-同一字元不同字符集編碼不同及匯入匯出的亂碼字元
- JBOSS下的JSP頁面字符集亂碼問題JS
- 如何在Ubuntu下新增中文字符集支援(解決中文亂碼問題)Ubuntu
- Oracle 8i中字符集亂碼問題析及其解決辦法(轉)Oracle
- linux 字符集 頁面顯示亂碼Linux
- 發現韓文字符集出現亂碼.??? 請問如何解決?
- 年輕人必須理解的
- 理解ORACLE 字符集【轉】Oracle
- 我對作業系統的理解作業系統
- 必須相容中國芯 國產作業系統將崛起抗衡Windows?作業系統Windows
- 關於Linux作業系統,這些你必須知道!Linux作業系統
- mysql亂碼?一勞永逸修改mysql字符集!MySql
- 企業使用ERP系統必須瞭解的注意事項
- 中高階前端必須瞭解的--陣列亂序前端陣列
- linux出現故障字符集亂碼故障排查思路Linux
- 改變redhat的系統語言/字符集(轉)Redhat
- 傳統生鮮配送企業必須要解決的幾個問題
- 【字符集】論Oracle字符集“轉碼”過程Oracle
- 作業系統(自己理解)作業系統
- Win10系統瀏覽器字型錯亂亂碼的解決方法Win10瀏覽器
- ANSI(字符集) and Unicode(字符集) and UTF-8(編碼Unicode字符集)Unicode
- 字符集和字元編碼詳解字元
- 字符集編碼知識詳解