解决向MySQL中插入中文显示乱码和报错的问题

  • MySQL中文乱码产生的原因
  • 首先查看数据库中与字符集相关参数
  • 修改MySQL数据库中的客户端
  • 如何更改MySQL数据库服务器中客户端部分的字符集
  • 重新启动MySQL数据库服务器
  • 重新进入MySQL数据库查看编译情况


MySQL中文乱码产生的原因

因为我们使用的系统中(客户端命令)默认为gbk编译,而MySQL数据库默认为utf8编译.也就是说MySQL数据库听不懂我们对它下的指令,语言不通,自然就出现乱码了.
 不要着急,解决这个问题并不难,进行如下操作即可.

首先查看数据库中与字符集相关参数

我们进入MySQL中输入这行命令--->show variables like '%character%';
在下图中我们就会看到MySQL中都有哪写字符集和他们UI应的参数了:

MySQL 设置指定字符集变量 mysql设置字符集为gbk_乱码


下面我们来就按步骤解决这个问题

修改MySQL数据库中的客户端

我们只要将MySQL数据库中客户端的urf8,修改为gbk就可以了.
让我先来说明一下原因:
	在MySQL数据库中有两部分字符集
	客户端字符集'client'和服务端字符集'server',
	当MySQL数据库接受到的命令为gbk样式,而MySQL数据库服务器中客户端只能读懂utf8,那么我们就把MySQL数据库服务器中客户端的utr8改为gbk.这样MySQL数据库服务器就了解命令在说什么了.

MySQL 设置指定字符集变量 mysql设置字符集为gbk_中文乱码_02


下面让我们来一起操作一下吧

如何更改MySQL数据库服务器中客户端部分的字符集

1.找到你的MySQL安装路径中my.ini文件

MySQL 设置指定字符集变量 mysql设置字符集为gbk_MySQL数据库_03


2.通常my.ini是不允许我们修改的,但是我们有办法,哈哈哈…

把my.ini复制到桌面上,右键用高级记事本(或其他编辑器)打开.去里面找到有[client]所在的位置.

MySQL 设置指定字符集变量 mysql设置字符集为gbk_MySQL_04

MySQL 设置指定字符集变量 mysql设置字符集为gbk_乱码_05


3.别忘记要把改好的my.ini文件保存并复制回来哦!

重新启动MySQL数据库服务器

1.在’运行’中输入services.msc

MySQL 设置指定字符集变量 mysql设置字符集为gbk_MySQL数据库_06


2. 这就进入了服务界面,找到MySQL点击进入

MySQL 设置指定字符集变量 mysql设置字符集为gbk_MySQL数据库_07


3.点击’停止’

MySQL 设置指定字符集变量 mysql设置字符集为gbk_中文乱码_08


4.点击’启动’

MySQL 设置指定字符集变量 mysql设置字符集为gbk_中文乱码_09

重新进入MySQL数据库查看编译情况

我们再次输入这行命令—>show variables like ‘%character%’;

可以看到如下效果:

MySQL 设置指定字符集变量 mysql设置字符集为gbk_MySQL_10


如果你也看到了这个画面,

那恭喜你,成功了!!!