问题描述:使用mysql,向其中插入中文或其他非英文字符时,插进去的值全部变成了乱码或问号(?)。仔细检查了下,后台程序中编码格式设置是utf-8,数据库是utf-8,表的编码格式也是utf8,但是还是乱码。

原因描述:尽管能想到的地方都确认了编码格式为utf8,但是还是乱码,这是因为mysql server和client的编码格式不是utf-8,所以会出现乱码或问号。

解决方案:找到mysql的配置文件,一般这个文件默认名字是:my.ini,将其中的mysql和mysqId的默认编码格式设置为utf-8,这样就解决了。

如图:

一般my.ini文件默认存放在C盘目录下:C:\Program Files\MySQL\MySQL Server 5.5

mysql插入中文或英文以外的字符出现乱码或全是问号(?)

打开它,修改其中的客户端和服务端编码格式为utf8

mysql插入中文或英文以外的字符出现乱码或全是问号(?)

mysql插入中文或英文以外的字符出现乱码或全是问号(?)

将这两处的编码格式设置为utf8,然后重启mysql服务:(可以使用快捷键Ctrl+Alt+Del,打开任务管理器,选择【服务】栏,在下面的众多服务中找到MYSQL并选中它,右键->重新启动)

mysql插入中文或英文以外的字符出现乱码或全是问号(?)

之后,就是等待mysql服务重启成功后,再次执行之前的插入操作,就不会乱码啦,一切都变美好了。

相关文章:

  • 2021-12-03
  • 2021-12-28
  • 2022-12-23
  • 2021-09-20
  • 2021-12-06
  • 2022-01-17
猜你喜欢
  • 2021-11-21
  • 2022-12-23
  • 2021-04-11
  • 2021-12-21
  • 2021-07-29
  • 2021-06-15
  • 2021-09-06
相关资源
相似解决方案