Mysql的字符集与排序规则

Mysql的排序规则

在新建MySQL数据库或表的时候经常会选择字符集和排序规则。数据库用的字符集和排序规则是什么呢?

字符集

在这里插入图片描述

字符集一般都选择utf8,那么utf8mb4又是什么呢?
utf8mb4兼容utf8,且比utf8能表示更多的字符。至于什么时候用,看做什么项目了,在博文
http://blog.csdn.net/leelyliu/article/details/52879685
看unicode编码区从1 ~ 126就属于传统utf8区,当然utf8mb4也兼容这个区,126行以下就是utf8mb4扩充区,什么时候需要存储那些字符,你才用utf8mb4,否则只是浪费空间(utf8mb4比utf8所占空间大)。

排序规则:

是指对指定字符集下不同字符的比较规则。其特征有以下几点:

  1. 两个不同的字符集不能有相同的排序规则;
  2. 两个字符集有一个默认的排序规则;
  3. 有一些常用的命名规则。如_ci结尾表示大小写不敏感(caseinsensitive),_cs表示大小写敏感(case
    sensitive),_bin表示二进制的比较(binary),a 和 A 会别区别对待.。

utf-8有默认的排序规则:
命令:SHOW CHARSET LIKE ‘utf8%’;

补充

  • utf8_general_ci 不区分大小写,这个你在注册用户名和邮箱的时候就要使用。
  • utf8_general_cs 区分大小写,如果用户名和邮箱用这个 就会照成不良后果
  • utf8_bin:字符串每个字符串用二进制数据编译存储。 区分大小写,而且可以存二进制的内容
  • utf8_unicode_ci和utf8_general_ci对中、英文来说没有实质的差别。
  • utf8_general_ci校对速度快,但准确度稍差。 (准确度够用,一般建库选择这个)
  • utf8_unicode_ci准确度高,但校对速度稍慢。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值