原 荐 MySQL命令窗口中文乱码或插入中文数据失败

栏目: 数据库 · 发布时间: 7年前

MySQL命令窗口中文乱码或插入中文数据失败

  lixuelong 发布于 46分钟前

字数 513

阅读 8

收藏 0

MySQL

开发十年,就只剩下这套 Java 开发体系了 >>> 原 荐 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 1

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)

这时可以先查看下环境编码配置,我的是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且不能更改

原 荐 MySQL命令窗口中文乱码或插入中文数据失败

这时我们可以使用“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命令窗口中文乱码或插入中文数据失败

© 著作权归作者所有

上一篇: Spring项目搭建

下一篇: 上传到 Linux 服务器的压缩包解压后中文命名乱码

原 荐 MySQL命令窗口中文乱码或插入中文数据失败

lixuelong

粉丝 4

博文 14

码字总数 6403

作品 0

朝阳

个人站长

提问

相关文章 最新文章

关于使用MySQL命令行客户端查询乱码的解决方法

今天,在使用MySQL命令行客户端查询时,发现查询的结果中文乱码,用其他第三方客户端 工具 进行查询,中文数据不是乱码,很是奇怪。搜狗一番,找到了乱码原因:中文操作系统中,其命令行程序的...

IceRainYWC

2013/05/10

0

0

mybatis连接mysql数据库插入中文乱码

对于mysql数据库的乱码问题,有两中情况: 1. mysql数据库编码问题(建库时设定)。 2. 连接mysql数据库的url编码设置问题。 对于第一个问题,目前个人发现只能通过重新建库解决,建库的时候...

有资本再款

2015/09/09

100

0

cmd中查询mysql表出现中文乱码

问题:在pycharm中正常的fetchall拉取数据,能够正常显示,而在cmd中直接select却出现中文乱码。 解决思路:右键查看cmd命令窗口属性得到,cmd窗口默认编码是gbk(如下图所示),而设置的mys...

fang_faye

09/20

0

0

MySQL学习笔记 - 字符编码

如何向mysql5数据库插入中文 ———— JAVA学习室(http://www.java3z.com) 向mysql5数据库正常插入中文,操作如下: 1.把字符集设定为能支持中文的gbk(在my.ini文件中改) 2.把数据库的Clien...

wqli

2012/09/07

0

2

MySQL中如何处理中文字符问题

最有力的解决办法链接: http://www.busfly.net/post/58.html -------------------------------------------------------------------------- MySQL的老手们: 本人用MySQL时不能够处理中文,......

小梅菜鸟

2012/05/15

0

0

没有更多内容

加载失败,请刷新页面

加载更多
CentOS 7.5 Phabricator安装

1、所需环境 Linux:这里使用CentOS 7.5 MySQL:5.5及以上 PHP:5.2及以上 Apache:也可使用nginx Git 2、安装环境 2.1、 脚本安装 2.1.1、脚本 install_rhel-derivs.sh https://secure.phab...

zx1024

20分钟前

1

0

一个网工的Linux学习过程

机缘巧合下,在快要毕业时找到了一份网络工程师的工作,对于学习通信工程的我来说,也不算是跨专业就业吧。在入职之前也了解了一下网络工程师的学习路径,网络工程师是从事计算机信息系统的设...

linuxprobe16

35分钟前

2

0

原 荐 MySQL命令窗口中文乱码或插入中文数据失败
分布式调度light-task-scheduler

LTS 1、启动jobtracker sh jobtracker.sh zoo start 2、启动admin sh lts-admin.sh restart

王桥修道院副院长

38分钟前

1

0

关于playframework1.2.4 static 关键字使用的一些思考

在Play1.2.4中Controller中的方法需要static修饰符号才能成为一个Action。 所以像获取pageNum和searchword参数时只能够在Action中定义临时变量来存储参数。这样必然会存在大量重复的代码,比...

tuerqidi

39分钟前

1

0

原 荐 MySQL命令窗口中文乱码或插入中文数据失败
本机号码认证黑科技:极光(JG)开发者服务推出“极光认证”新产品

近日,中国领先的大数据服务商极光(JG)推出全新产品——极光认证JVerification。极光认证是极光针对APP用户注册登陆,二次安全验证等身份验证场景打造的一款本机号码认证SDK,验证用户提供...

极光推送

46分钟前

1

0

原 荐 MySQL命令窗口中文乱码或插入中文数据失败

没有更多内容

加载失败,请刷新页面

加载更多

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Beginning ARKit for iPhone and iPad

Beginning ARKit for iPhone and iPad

Wallace Wang / Apress / 2018-11-5 / USD 39.99

Explore how to use ARKit to create iOS apps and learn the basics of augmented reality while diving into ARKit specific topics. This book reveals how augmented reality allows you to view the screen on ......一起来看看 《Beginning ARKit for iPhone and iPad》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具