怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍"怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题",在日常操作中,相信很多人在怎么解决MySQL命令窗口中文乱码或插入中文数据失败的问题问题上存在疑惑,小编查阅了各式资料,
千家信息网最后更新 2025年11月07日怎么解决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安全错误
数据库的锁怎样保障安全
服务器国外服务商
awtrix公用服务器
网络安全刘建伟毛剑pdf
什么叫游戏服务器被攻击了
万德数据库和终端太贵了
中国提供东盟的网络安全产品
黟县软件开发者
网络安全法宣传不到位
廊坊软件开发app服务电话
网络安全专家讲座点评
文本应不应该存在数据库中
太原2u服务器价格
西门子编程数据库导入
计算机网络技术专业单招面试
四大网络安全组织
湖南联想服务器续保虚拟主机
软件开发改进计划
数据库产生结果集
mac服务器pro测评
广州科技软件开发公司
网络技术工作一月多钱
服务器的mod怎么用
用jq链接数据库做增删改查
路由器创建vpn服务器
打印机服务器不可用是什么意思
中国电信网络技术
access数据库好用吗
a100深度学习服务器
数据库查询前百分之多少
vue要服务器么