之前一直在做英文中文論壇,最近公司業務發展我延伸架設了西班牙語和法語論壇。西班牙語、法語、意大利語、葡語、都屬于拉丁語系。差别還是很大的,資料庫字元格式當然也做了相應的調整,頁面的字元編碼也進行了調整。系統前背景編碼格外花了點時間進行了全面的調整,也積累了對拉丁語處理的經驗。重溫一下資料庫字元,一個不太起眼又非常重要的内容。中文論壇你要近可能的選擇比較大的字庫,這個玩家送出韓語日語,拉丁語言以展現玩家的實力,呵呵。 字元集和整理
整理 描述
armscii8 (ARMSCII-8 Armenian)亞美尼亞語, 二進制
armscii8_general_ci 亞美尼亞語, 不區分大小寫
ascii (US ASCII)西歐 (多語言), 二進制
ascii_general_ci 西歐 (多語言), 不區分大小寫
big5 (Big5 Traditional Chinese)繁體中文, 二進制
big5_chinese_ci 繁體中文, 不區分大小寫
binary (Binary pseudo charset)二進制
cp1250 (Windows Central European)中歐 (多語言), 二進制
cp1250_croatian_ci 克羅地亞語, 不區分大小寫
cp1250_czech_cs 捷克語, 區分大小寫
cp1250_general_ci 中歐 (多語言), 不區分大小寫
cp1251 (Windows Cyrillic)西裡爾語 (多語言), 二進制
cp1251_bulgarian_ci 保加利亞語, 不區分大小寫
cp1251_general_ci 西裡爾語 (多語言), 不區分大小寫
cp1251_general_cs 西裡爾語 (多語言), 區分大小寫
cp1251_ukrainian_ci 烏克蘭語, 不區分大小寫
cp1256 (Windows Arabic)阿拉伯語, 二進制
cp1256_general_ci 阿拉伯語, 不區分大小寫
cp1257 (Windows Baltic)巴拉克語 (多語言), 二進制
cp1257_general_ci 巴拉克語 (多語言), 不區分大小寫
cp1257_lithuanian_ci 立陶宛語, 不區分大小寫
cp850 (DOS West European)西歐 (多語言), 二進制
cp850_general_ci 西歐 (多語言), 不區分大小寫
cp852 (DOS Central European)中歐 (多語言), 二進制
cp852_general_ci 中歐 (多語言), 不區分大小寫
cp866 (DOS Russian)俄語, 二進制
cp866_general_ci 俄語, 不區分大小寫
cp932 (SJIS for Windows Japanese)日語, 二進制
cp932_japanese_ci 日語, 不區分大小寫
dec8 (DEC West European)西歐 (多語言), 二進制
dec8_swedish_ci 瑞典語, 不區分大小寫
eucjpms (UJIS for Windows Japanese)日語, 二進制
eucjpms_japanese_ci 日語, 不區分大小寫
euckr (EUC-KR Korean)北韓語, 二進制
euckr_korean_ci 北韓語, 不區分大小寫
gb2312 (GB2312 Simplified Chinese)簡體中文, 二進制
gb2312_chinese_ci 簡體中文, 不區分大小寫
gbk (GBK Simplified Chinese)簡體中文, 二進制
gbk_chinese_ci 簡體中文, 不區分大小寫
geostd8 (GEOSTD8 Georgian)喬治亞語, 二進制
geostd8_general_ci 喬治亞語, 不區分大小寫
greek (ISO 8859-7 Greek)希臘語, 二進制
greek_general_ci 希臘語, 不區分大小寫
hebrew (ISO 8859-8 Hebrew)希伯來語, 二進制
hebrew_general_ci 希伯來語, 不區分大小寫
hp8 (HP West European)西歐 (多語言), 二進制
hp8_english_ci 英語, 不區分大小寫
keybcs2 (DOS Kamenicky Czech-Slovak)捷克斯洛伐克語, 二進制
keybcs2_general_ci 捷克斯洛伐克語, 不區分大小寫
koi8r (KOI8-R Relcom Russian)俄語, 二進制
koi8r_general_ci 俄語, 不區分大小寫
koi8u (KOI8-U Ukrainian)烏克蘭語, 二進制
koi8u_general_ci 烏克蘭語, 不區分大小寫
latin1 (cp1252 West European)西歐 (多語言), 二進制
latin1_danish_ci 丹麥語, 不區分大小寫
latin1_general_ci 西歐 (多語言), 不區分大小寫
latin1_general_cs 西歐 (多語言), 區分大小寫
latin1_german1_ci 德語 (字典), 不區分大小寫
latin1_german2_ci 德語 (電話本), 不區分大小寫
latin1_spanish_ci 西班牙語, 不區分大小寫
latin1_swedish_ci 瑞典語, 不區分大小寫
latin2 (ISO 8859-2 Central European)中歐 (多語言), 二進制
latin2_croatian_ci 克羅地亞語, 不區分大小寫
latin2_czech_cs 捷克語, 區分大小寫
latin2_general_ci 中歐 (多語言), 不區分大小寫
latin2_hungarian_ci 匈牙利語, 不區分大小寫
latin5 (ISO 8859-9 Turkish)土耳其語, 二進制
latin5_turkish_ci 土耳其語, 不區分大小寫
latin7 (ISO 8859-13 Baltic)巴拉克語 (多語言), 二進制
latin7_estonian_cs 愛沙尼亞語, 區分大小寫
latin7_general_ci 巴拉克語 (多語言), 不區分大小寫
latin7_general_cs 巴拉克語 (多語言), 區分大小寫
macce (Mac Central European)中歐 (多語言), 二進制
macce_general_ci 中歐 (多語言), 不區分大小寫
macroman (Mac West European)
macroman_bin 西歐 (多語言), 二進制
macroman_general_ci 西歐 (多語言), 不區分大小寫
sjis (Shift-JIS Japanese)日語, 二進制
sjis_japanese_ci 日語, 不區分大小寫
swe7 (7bit Swedish)瑞典語, 二進制
swe7_swedish_ci 瑞典語, 不區分大小寫
tis620 (TIS620 Thai)泰語, 二進制
tis620_thai_ci 泰語, 不區分大小寫
ucs2 (UCS-2 Unicode)多語言), 二進制
ucs2_czech_ci 捷克語, 不區分大小寫
ucs2_danish_ci 丹麥語, 不區分大小寫
ucs2_esperanto_ci Esperanto, 不區分大小寫
ucs2_estonian_ci 愛沙尼亞語, 不區分大小寫
ucs2_general_ci Unicode (多語言), 不區分大小寫
ucs2_hungarian_ci 匈牙利語, 不區分大小寫
ucs2_icelandic_ci 冰島語, 不區分大小寫
ucs2_latvian_ci 拉脫維亞語, 不區分大小寫
ucs2_lithuanian_ci 立陶宛語, 不區分大小寫
ucs2_persian_ci 波斯語, 不區分大小寫
ucs2_polish_ci 波蘭語, 不區分大小寫
ucs2_roman_ci 西歐, 不區分大小寫
ucs2_romanian_ci 羅馬尼亞語, 不區分大小寫
ucs2_slovak_ci 斯洛伐克語, 不區分大小寫
ucs2_slovenian_ci 斯洛文尼亞語, 不區分大小寫
ucs2_spanish2_ci 傳統西班牙語, 不區分大小寫
ucs2_spanish_ci 西班牙語, 不區分大小寫
ucs2_swedish_ci 瑞典語, 不區分大小寫
ucs2_turkish_ci 土耳其語, 不區分大小寫
ucs2_unicode_ci Unicode (多語言), 不區分大小寫
ujis (EUC-JP Japanese)日語, 二進制
ujis_japanese_ci 日語, 不區分大小寫
utf8 (UTF-8 Unicode)多語言), 二進制
utf8_czech_ci 捷克語, 不區分大小寫
utf8_danish_ci 丹麥語, 不區分大小寫
utf8_esperanto_ci Esperanto, 不區分大小寫
utf8_estonian_ci 愛沙尼亞語, 不區分大小寫
utf8_general_ci Unicode (多語言), 不區分大小寫
utf8_hungarian_ci 匈牙利語, 不區分大小寫
utf8_icelandic_ci 冰島語, 不區分大小寫
utf8_latvian_ci 拉脫維亞語, 不區分大小寫
utf8_lithuanian_ci 立陶宛語, 不區分大小寫
utf8_persian_ci 波斯語, 不區分大小寫
utf8_polish_ci 波蘭語, 不區分大小寫
utf8_roman_ci 西歐, 不區分大小寫
utf8_romanian_ci 羅馬尼亞語, 不區分大小寫
utf8_slovak_ci 斯洛伐克語, 不區分大小寫
utf8_slovenian_ci 斯洛文尼亞語, 不區分大小寫
utf8_spanish2_ci 傳統西班牙語, 不區分大小寫
utf8_spanish_ci 西班牙語, 不區分大小寫
utf8_swedish_ci 瑞典語, 不區分大小寫
utf8_turkish_ci 土耳其語, 不區分大小寫
utf8_unicode_ci Unicode (多語言), 不區分大小寫
Open new phpMyAdmin window
其中這三個都是多語言
utf8_bin Unicode (多語言), 二進制
utf8_unicode_ci Unicode (多語言), 不區分大小寫
utf8_general_ci Unicode (多語言), 不區分大小寫
utf8_bin Unicode (
ujis_bin
ucs2_bin Unicode (
tis620_bin
swe7_bin
sjis_bin
macce_bin
latin7_bin
latin5_bin
latin2_bin
latin1_bin
koi8u_bin
koi8r_bin
keybcs2_bin
hp8_bin
hebrew_bin
greek_bin
geostd8_bin
gbk_bin
gb2312_bin
euckr_bin
eucjpms_bin
dec8_bin
cp932_bin
cp866_bin
cp852_bin
cp850_bin
cp1257_bin
cp1256_bin
cp1251_bin
cp1250_bin
binary
big5_bin
ascii_bin
armscii8_bin MySQL中的字元集和校對 MySQL伺服器能夠支援多種字元集。可以使用SHOW CHARACTER SET語句列出可用的字元集:
mysql> SHOW CHARACTER SET;
+----------+-----------------------------+---------------------+--------+
| Charset | Description | Default collation | Maxlen |
+----------+-----------------------------+---------------------+--------+
| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 |
| dec8 | DEC West European | dec8_swedish_ci | 1 |
| cp850 | DOS West European | cp850_general_ci | 1 |
| hp8 | HP West European | hp8_english_ci | 1 |
| koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 |
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| swe7 | 7bit Swedish | swe7_swedish_ci | 1 |
| ascii | US ASCII | ascii_general_ci | 1 |
| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 |
| sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 |
| hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 |
| tis620 | TIS620 Thai | tis620_thai_ci | 1 |
| euckr | EUC-KR Korean | euckr_korean_ci | 2 |
| koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 |
| gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 |
| greek | ISO 8859-7 Greek | greek_general_ci | 1 |
| cp1250 | Windows Central European | cp1250_general_ci | 1 |
| gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 |
Unicode字元集
MySQL有兩種Unicode字元集。你能夠使用這些字元集儲存大約650種語言的文本。 · ucs2 (UCS-2 Unicode)校對規則:
· mysql> SHOW COLLATION LIKE 'ucs2%';
· utf8 (UTF-8 Unicode)校對規則:
·
· mysql> SHOW COLLATION LIKE 'utf8%';
utf8_unicode_ci校對規則是根據Unicode校對規則算法(UCA)執行的, 校對規則描述見 http://www.unicode.org/reports/tr10/。此校對規則使用UCA 4.0.0版本砝碼鍵: http://www.unicode.org/Public/UC一個/4.0.0/一個llkeys-4.0.0.txt。(以下讨論使用utf8_unicode_ci,但同樣适合ucs2_unicode_ci。) 目前,utf8_unicode_ci校對規則僅部分支援Unicode校對規則算法。一些字元還是不能支援。并且,不能完全支援組合的記号。這主要影響越南和俄羅斯的一些少數民族語言,如:Udmurt 、Tatar、Bashkir和Mari。 utf8_unicode_ci的最主要的特色是支援擴充,即當把一個字母看作與其它字母組合相等時。例如,在德語和一些其它語言中‘ß’等于‘ss’。 utf8_general_ci是一個遺留的 校對規則,不支援擴充。它僅能夠在字元之間進行逐個比較。這意味着utf8_general_ci校對規則進行的比較速度很快,但是與使用utf8_unicode_ci的校對規則相比,比較正确性較差)。 例如,使用utf8_general_ci和utf8_unicode_ci兩種 校對規則下面的比較相等:
Ä = A
Ö = O
Ü = U
兩種校對規則之間的差別是,對于utf8_general_ci下面的等式成立:
ß = s
但是,對于utf8_unicode_ci下面等式成立:
ß = ss
對于一種語言僅當使用utf8_unicode_ci排序做的不好時,才執行與具體語言相關的utf8字元集校對規則。例如,對于德語和法語,utf8_unicode_ci工作的很好,是以不再需要為這兩種語言建立特殊的utf8校對規則。
utf8_general_ci也适用與德語和法語,除了‘ß’等于‘s’,而不是‘ss’之外。如果你的應用能夠接受這些,那麼應該使用utf8_general_ci,因為它速度快。否則,使用utf8_unicode_ci,因為它比較準确。
utf8_swedish_ci,與其它語言相關的utf8的校對規則相似,來源于utf8_unicode_ci,使用額外的語言規則。例如,在瑞典語中,以下的關系式成立,它在德語和法語中不成立:
Ü = Y < Ö
utf8_spanish_ci和utf8_spanish2_ci校對規則分别适用于現代和古典西班牙語。在兩種校對規則中,ñ’(n-發音符)是‘n’和‘o’之間的間隔字母。另外,對于古典西班牙語,‘ch’是‘c’和d之間的間隔字母,并且‘ll’是‘l’和‘m’之間的間隔字母。
轉載于:https://blog.51cto.com/haikong808/381660