当我创建数据库时,我要求选择Default Collate,当我创建一个表时,我要求选择Collate.utf8_general_ci或...拉丁...?区分哪一个是正确的基础是什么?
0x4*_*672 12
甲归类确定字符的排序顺序,它是一种用于在字符集相比较的字符的一组规则.任何给定的字符集始终至少有一个排序规则.排序规则名称ci,cs和bin的结尾分别表示不区分大小写,区分大小写和二进制.二进制排序规则utf8_bin通常也区分大小写,因为它根据字符串的数值进行二进制字符串比较.
这意味着如果您想要使用不区分大小写的选择查询,其中a和A没有区别,则应使用以ci结尾的排序规则.如果要创建区分大小写的查询,其中a和A不同,则应使用以cs或bin结尾的排序规则.
如果未选择,则应用标准级别.MySQL中有各种级别的排序规则,例如可以显示它们
mysql> show variables like '%collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5521 次 |
| 最近记录: |