怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍"怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题",在日常操作中,相信很多人在怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题问题上存在疑惑,小编查阅了各式资料,
千家信息网最后更新 2026年10月31日怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题
这篇文章主要介绍"怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题",在日常操作中,相信很多人在怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
在Windwos上使用命令窗口操作MySQL数据库时,如果命令窗口的字符编码与数据库不一致时,就会出现中文乱码的情况
比如查询会出现中文乱码,或者插入数据会出现错误"ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'name' at row 1"
mysql> insert into user(name,gender,age) values('张三','男',22);ERROR 1366 (HY000): Incorrect string value: '\xD5\xC5\xC8\xFD' for column 'name' at row 1mysql> select * from user;+----+----------+--------+-----+---------------------+| id | name | gender | age | updated_time |+----+----------+--------+-----+---------------------+| 1 | zhangsan | M | 22 | 2018-10-31 17:03:25 || 2 | 寮犱笁 | 鐢? | 22 | 2018-11-01 09:01:43 |+----+----------+--------+-----+---------------------+2 rows in set (0.00 sec)这时可以先查看下环境编码配置,我的是utf8,结果是下面这样
mysql> show variables like 'char%';+--------------------------+---------------------------------------------------------+| Variable_name | Value |+--------------------------+---------------------------------------------------------+| character_set_client | utf8 || character_set_connection | utf8 || character_set_database | utf8 || character_set_filesystem | binary || character_set_results | utf8 || character_set_server | utf8 || character_set_system | utf8 || character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\ |+--------------------------+---------------------------------------------------------+8 rows in set (0.00 sec)
查看windwos命令窗口的的属性可知,编码格式为GBK且不能更改
这时我们可以使用"set names gbk;"来指定客户端发送给mysql语句时的编码格式,并且可以看到client、connection、results三个变量的编码格式变为了gbk,其它的没有变化
mysql> set names gbk;Query OK, 0 rows affected (0.00 sec)mysql> show variables like 'char%';+--------------------------+---------------------------------------------------------+| Variable_name | Value |+--------------------------+---------------------------------------------------------+| character_set_client | gbk || character_set_connection | gbk || character_set_database | utf8 || character_set_filesystem | binary || character_set_results | gbk || character_set_server | utf8 || character_set_system | utf8 || character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\ |+--------------------------+---------------------------------------------------------+8 rows in set (0.00 sec)
再次执行下插入操作没问题了,查询数据中文也不会乱码了
mysql> insert into user(name,gender,age) values('张三','男',22);Query OK, 1 row affected (0.04 sec)mysql> select * from user;+----+----------+--------+-----+---------------------+| id | name | gender | age | updated_time |+----+----------+--------+-----+---------------------+| 1 | zhangsan | M | 22 | 2018-10-31 17:03:25 || 2 | 张三 | 男 | 22 | 2018-11-01 09:01:43 |+----+----------+--------+-----+---------------------+2 rows in set (0.00 sec)到此,关于"怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
中文
数据
乱码
命令
问题
编码
学习
格式
张三
数据库
更多
帮助
查询
实用
一致
接下来
三个
再次
变量
字符
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
精品咖啡豆
北京互联网科技公司
易互联网科技有限公司
互联网科技英文
睿民互联网科技
左右互联网络科技
卓越科技互联网 招聘
苏州铭阳互联网科技有限公司
恒生互联网科技指数跳水
洛阳昕诺飞互联网科技有限公司
互联网金融科技展
乌苏新华互联网科技做什么的
迪庆互联网科技招生
佛山市翊博互联网络科技有限公司
恒生互联网科技业指数调整周期
国大互联网教育科技有限公司薪资
深圳互联网科技的发展
广东猫王互联网科技有限公司电话
东风日产互联网科技公司叫什么
前海云享互联网科技
互联网科技公司
互联网巨头反垄断金融科技
礼当家互联网科技
上海电发互联网科技有限公司
伊宁互联网科技做什么的
江苏互联网智能科技产品出厂价
湖北辰鑫科技互联网
互联网的科技体现在哪里
恒生科技指数 中概互联网
重庆科技产业互联网有哪些