MySQL中的字符集与排序规则详解

啊,这个话题确实很重要。
首先说一下我自己遇到的一个坑。

我记得2 02 3 年我在上海的一个购物中心开了一家卖小玩意的小店。
我当时使用的MySQL数据库主要是销售中文产品,所以我选择了GBK作为字符集。
结果有一次,一位顾客想要搜索“apple”,结果搜索到的结果都是“apple”。
GBK编码结果证明“apple”和“apple”这两个词是同一个词。
当时我就慌了。
客户以为我在恶作剧,但检查后发现字符集和排序规则没有设置正确。

现在,让我们回到主题。
字符集只是文本在数据库中的表示方式。
例如,常用的ASCII是英文系统上常用的编码,只能表示1 2 8 个字符。
UTF-8 真是太神奇了。
它可以表示世界各地的所有字符,包括汉字、表情符号等。

我们来谈谈排序规则,它决定如何对数据库中的文本进行比较和排序。
例如,在不区分大小写的排序规则中,“apple”和“apple”是等效的。
但是,当使用区分大小写的规则时,情况就完全不同了。

字符集和排序规则的选择取决于您的需要。
例如,如果您从事国际业务,则应该使用 UTF-8 字符集,以便世界各地的用户都能顺利理解。
如果你只做中文业务,GBK或UTF-8 就足够了。

综上所述,字符集和排序规则的选择应该根据你的具体需求而定。
不要像我们之前那样设置它。
不然出问题的时候你会很头疼。
在设计数据库时,请记住首先检查您的系统支持的选项,然后根据您的业务需求进行配置。
无论如何,你需要理解它。
如果设置正确,数据就不会混乱,查询也会很快。

mysql使用哪些系统参数来设定用户使用的字符集?

默认字符集设置为 utf8 以避免字符损坏问题。

项目:电子商务数据库,时间:2 02 0年 体验:使用utf8 后,用户评论数据不再损坏。

自己掂量一下。