mysql乱码问题的解决方案
2016-01-01 19:05
211 查看
现象:在向数据库中插入的数据有中文时,报如下错误
原因是:电脑的系统默认编码是gbk,而mysql客户端提供的编码方式是utf8,两种编码不一致导致的,查看当前mysql的编码:
show variables like 'character%';
如下图:
解决方式是将mysql提供的客户端编码变为gbk
设置客户端编码:set character_set_client = gbk;
此时可以插入中文数据了,但是在select * from user时发现刚才插入的中文数据乱码
原因是:电脑的系统默认编码是gbk,而mysql结果集的编码方式是utf8,两种编码不一致导致的
解决方案是将mysql结果集编码设置成gbk
设置结果集的编码:set character_set_results = gbk;
再次查询数据库
注意:上述操作只针对当前客户端有效
彻底修改编码的操作:在安装文件中寻找my.ini文件 找到default-character-set=utf8一行
将utf8改成gbk,意味着和客户端相关的编码全部给程gbk
再次查询编码集:
以后可以随意进行中文的存储于显示了
来自为知笔记(Wiz)
原因是:电脑的系统默认编码是gbk,而mysql客户端提供的编码方式是utf8,两种编码不一致导致的,查看当前mysql的编码:
show variables like 'character%';
如下图:
解决方式是将mysql提供的客户端编码变为gbk
设置客户端编码:set character_set_client = gbk;
此时可以插入中文数据了,但是在select * from user时发现刚才插入的中文数据乱码
原因是:电脑的系统默认编码是gbk,而mysql结果集的编码方式是utf8,两种编码不一致导致的
解决方案是将mysql结果集编码设置成gbk
设置结果集的编码:set character_set_results = gbk;
再次查询数据库
注意:上述操作只针对当前客户端有效
彻底修改编码的操作:在安装文件中寻找my.ini文件 找到default-character-set=utf8一行
将utf8改成gbk,意味着和客户端相关的编码全部给程gbk
再次查询编码集:
以后可以随意进行中文的存储于显示了
来自为知笔记(Wiz)
相关文章推荐
- Atitit.自定义存储引擎的接口设计 api 标准化 attilax 总结 mysql
- Atitit.自定义存储引擎的接口设计 api 标准化 attilax 总结 mysql
- Atitit.自定义存储引擎的接口设计 api 标准化 attilax 总结 mysql
- Mysql学习总结(5)——MySql常用函数大全讲解
- Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型
- Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型
- Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型
- Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
- Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
- Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
- Mysql学习总结(2)——Mysql超详细Window安装教程
- Mysql学习总结(2)——Mysql超详细Window安装教程
- Mysql学习总结(2)——Mysql超详细Window安装教程
- mysql 数据库中 int(3) 和 int(11) 什么区别?
- MySQL GTID模式 主从复制跳过错误事务
- mysql 存储过程示例,有参有返回值,使用到了判断,循环,游标,临时表,事务
- Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词
- MySQL binlog格式解析
- MySQL安装详细步骤
- MYSQL查询某字段中以逗号分隔的字符串的方法