MySQL字符集乱码详解

对于MySQL数据库中出现乱码经常是新手碰到的一个头痛的问题,不知道为什么经常出现中文乱码。

1、对于所谓的数据库中乱码,其实这中说法是错误的,只是我们不认识服务器给我们的字符。其实还是原来的字符?那为什么出现中文,有时候我们不会认识。

2、我们在插入到数据库中的字符编码和数据库内部编码不统一而造成的。对于我们插入一条数据到数据库中和接收,在这个中间我们出现了4次字符声明。

1)我们客户端的字符集真正的是什么。

2)MySQL服务器和客户端中间有一个连接转换的字符集,这个用来转换客户端的字符集的中间桥梁。

3)将数据存入到MySQL中以哪种字符集存储,就算客户端是gbk的字符集,存入到MySQL内部存储的utf8字符集,也是能存储的,这个就需要靠2)中所说的连接转换字符集。

4)返回的结果是以哪种字符集展现到客户端的。


如果正确的设置上面的这几项,也就能彻底解决数据库中字符集乱码的问题,至于MySQL中还有其他的更深的字符集的知识可以参见手册。

原文地址:https://www.cnblogs.com/shiwenhu/p/4419076.html