1.MySql的字符集包括字符集(CHARACTER)和校驗規則(COLLATION)兩個概念。字符集是用來定義MySql存儲字符串的方式;校驗規則是用來定義MySql比較字符串的方式。字符集與校驗規則是1對多關系。
2.每一個字符集最少應對應1個校驗規則,可使用“ SHOW COLLATION LIKE '%字符集%'”查看,例如查看GBK字符集的校驗規則以下:
3. 校驗規則命名約定:他們以其相干的字符集名開始,通常包括1個語言名,并且以 “下劃線”+ “ci” 或 “cs” 或 “bin”結束 ;
(1)_ci:大小寫不敏感(不辨別大小寫)
(2)_cs:大小寫敏感(嚴格辨別大小寫)
(3)_bin:2元,即比較是基于字符編碼的值而與語言無關。
4.字符集校驗規則比較以下:
“ERROR 1253 (42000): COLLATION 'gbk_chinese_ci' is not valid for CHARACTER SET 'utf8'”毛病信息含義是:當前系統字符集為utf8,校驗規則gbk_chinese_ci'不是utf8字符集的校驗規則,需要設置字符集為gbk: :
不辨別大小寫比較 :
2元比較: