MySQL中文乱码
来源:互联网 发布:java最好安装在哪个盘 编辑:程序博客网 时间:2024/04/29 19:59
mysql有六处使用了字符集,分别为:client 、connection、database、results、server 、system。
character_set_client 是MySQL数据库可以接受数据的编码
connection是连接数据库的字符集设置类型,如果程序没有指明连接数据库使用的字符集类型就按照服务器端默认的字符集设置。
database是数据库服务器中某个库使用的字符集设定,如果建库时没有指明,将使用服务器安装时指定的字符集设置。
character_set_results 是MySQL数据库给客户端返回时使用的字符集,如果没有指明,使用服务器默认的字符集。
server是服务器安装时指定的默认字符集设定。
system是数据库系统使用的字符集设定。
查看和修改数据库字符集:
show variables like 'character%';
set character_set_results=gbk;
set character_set_client=gbk;
问题1:安装MySQL数据库时设置编码(utf8),若安装数据库时没有设置,修改方法如下:
1.my.ini中设置:
[client]port=3306[mysql]default-character-set=gbk【修改这里更改了三个变量:client、results、connection】
2.查看MySQL数据库默认字符集
问题2:
由于安装数据库设置的是utf8格式,但是在dos界面cmd命令行下无法插入中文,也无法显示中文数据(乱码)。
此时,MySQL服务器端可以接受的编码character_set_client =utf8。而客户端的编码格式为gbk。如下图所示:
解决办法如下:
1.首先查看 MySQL服务器可以接受数据的编码 character_set_client =utf8 。
2.而客户端的编码格式为gbk,插入中文会报错。ERROR 1366 (HY000): Incorrect string value: '\xC1\xF5' for column 'name' at row 1。
此时,修改set character_set_client=gbk; 插入中文数据成功!
3.查询数据,此时中文乱码,显示不正常。
4.因为客户端(cmd)解码格式为gbk。而此时MySQL数据库向客户端(cmd)返回数据的格式为character_set_results=utf8
5.此时,修改set character_set_results=gbk;
6.查询显示中文数据成功!
7.注意:dos(cmd)客户端下设置的client和results编码格式,对SQLyog等软件客户端的编码格式不存在影响。所以这2处编码格式是针对不同的客户端。
0 0
- MYSQL中文乱码解决方案
- MYSQL中文乱码
- MySQL中文字符乱码
- mysql中文乱码解决
- 解决MySQL中文乱码
- mysql中文乱码解决方案
- mysql 中文乱码问题
- MySql 中文乱码问题,:
- mysql中文乱码终结
- MYSQL数据中文乱码
- Mysql中文乱码
- mysql中文乱码
- mysql中文乱码解决方法
- mysql 中文乱码。
- mysql中文乱码
- MySQL中文乱码
- MySQL 中文显示乱码
- MYSQL中文乱码解决方案
- release版本测试工作
- div中的滚动条始终拉到底
- 开源 | 哈佛大学NLP组开源神经机器翻译工具包OpenNMT:已达到生产可用水平
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- 编程知识学习记录
- MySQL中文乱码
- 日夜间模式切换
- JSP高级应用之“监听器“
- Unity Shader 知识点总结(二)
- LK 文件列表
- CreateWindow
- 职场人每天早晨做一个动作轻松提升工作效率
- POJ
- Android中的Messenger的原理及基本用法