1、先来查看一个建表语句
create table student( sid int primary key aotu_increment, sname varchar(20) not null, age int )charset=utf8;
思考一个问题:
- 当我们建表时,不指定charset=utf8的时候,此时插入中文,为什么会报错呢?
- 当指定charset=utf8后,再次插入中文,为什么又可以插入中文,并且不乱码呢?
2、查看CMD黑窗口的字符集
打开CMD黑窗口–>鼠标放在窗口最上方–>点击鼠标右键–>属性–>点击选项
通过上图可以知道:CMD中输入文字使用的字符编码是GBK。同时你在保存文件的时候,经常会看到ANSI字符集,这个代表的是本地字符集,我们在中国,本地字符集使用的就都是GBK编码。
3、你注意这个问题了吗?
客户端client输入的字符,都是采用GBK编码的。mysql服务器存储的字符又是UTF8编码的。那么,我们对数据库、表进行增删改查,最后返回到客户端界面中,要想保证字符不乱码,肯定是经过了"编码转换过程的"。我要问的是,究竟是什么东西完成了这个编码的转换过程的?
4、你不熟悉的几个mysql操作命令
-- 查看数据库支持的所有的字符集(这句命令自己下去操作)。 mysql> show character set; -- 查看系统当前状态,里面可以看到部分字符集设置。 mysql> status; -- 查看系统字符集设置,包括所有的字符集设置 mysql> show variables like '%char%';
操作结果如下:
通过上图我们可以看到有一个叫做"connection"的东西,中文名叫做"连接器"。"连接器"就是用来进行"编码转换过程"的。
1)连接器的特性
① “连接器的作用”:
连接客户端与服务端,进行字符集的转换。连接器有这种自动转换的功能。
② “连接器的工作流程”:
Ⅰ首先,客户端的字符先发给连接器,连接器选择一种编码将其转换(转换之后的编码, 与连接器的编码格式一致),进行临时存储。
Ⅱ 接着,连接器再次转换成与服务器一致的编码,并最终存储在服务器中。
Ⅲ 然后,服务器返回的结果,再次先通过连接器,连接器仍然是选择一种编码将其转换(转换之后的编码, 与连接器的编码格式一致),进行临时存储。
Ⅳ 最后,连接器再将结果转化为与客户端一致的字符集,就可以在客户端正常显示了。
2)图示说明连接器connection的作用
图一:
图一说明如下:
图二:
图二说明如下:
5、对上述两个图的实战演示
1)首先,了解如下几个代码。
-- 1)设置客户端的字符集。 set character_set_client=gbk; -- 2)设置连接器的字符集。 set character_set_connection=utf8; -- 3)设置返回结果的字符集。 set character_set_results=gbk;
2)代码演示过程,详细地写在如下链接中的sql文件中,可以自行下载,查看。
http://note.youdao.com/noteshare"text-align: center">
2)传输过程中,丢失字节导致的乱码。
7、对实际情况的分析(什么都不设置,系统默认是如何呢?)
1)仔细查看如下图片
根据上图可以知道(好好理解下面的文字说明):
图二:
2)set names gbk的含义
-- 当客户端、连接器、返回值的字符集相同,并且都是gbk的时候,我们可以采取如下的简写方式: set names gbk; -- 上述sql语句其实包含了如下三层意思: set character_set_client=gbk; set character_set_connection=gbk; set character_set_results=gbk;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]