失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > linux下mysql写中文变成问号_如何解决数据库插入中文字体时显示问号

linux下mysql写中文变成问号_如何解决数据库插入中文字体时显示问号

时间:2022-05-13 04:12:18

相关推荐

linux下mysql写中文变成问号_如何解决数据库插入中文字体时显示问号

欢迎点击「算法与编程之美」关注我们!

本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。

问题描述

我们在进行数据库的增删改查的操作时,当我们插入英文或者数字等字符串的时候能够正常显示,但的当我们插入中文字体的时候我们就会在我们的表中发现显示的是一连串的问号,没有显示出我们本该插入的中文字体,时我们该怎么解决呢?

解决方案

当我们遇到这个问题的时候首先想到的是编码问题,很可能是我们的编码格式不对,我们打开Notepad++我们会发现里面有多种编码格式:

这时候我们就需要去查看我们的这张表的编码格式,首先我们进入数据库,查看我们的编码格式;

我们会看到我们的几种编码格式,可能大家对这8中变量名不是很清楚,下面我们简单的介绍一下这几种变量名:

1、character_set_client

主要用来设置客户端使用的字符集。

2、character_set_connection

主要用来设置连接数据库时的字符集,如果程序中没有指明连接数据库使用的字符集类型则按照这个字符集设置。

3、character_set_database

主要用来设置默认创建数据库的编码格式,如果在创建数据库时没有设置编码格式,就按照这个格式设置。

4、character_set_filesystem

文件系统的编码格式,把操作系统上的文件名转化成此字符集,即把 character_set_client转换character_set_filesystem, 默认binary是不做任何转换的。

5、character_set_results

数据库给客户端返回时使用的编码格式,如果没有指明,使用服务器默认的编码格式。

6、character_set_server

服务器安装时指定的默认编码格式,这个变量建议由系统自己管理,不要人为定义。

7、character_set_system

数据库系统使用的编码格式,这个值一直是utf8,不需要设置,它是为存储系统元数据的编码格式。

8、character_sets_dir

这个变量是字符集安装的目录。

这就是8个变量的说明,大家可以简单了解一下,下面我们来介绍怎么解决这个问题,在百度上很容易查到这个问题的解决方案,很多方法是通过命令去修改这个编码格式,这里我用的是一种比较简单的方法。

我们首先找到我们MySQL的安装目录下的my.ini文件,我的是安装在d盘:D:Program FilesMySQLMySQL Server 5.5。我们用记事本打开,找到里面的编码配置的代码

也就是几个变量的编码格式,找到它对应的代码将其修改为utf8就可以了。

结语

我们在发生错误的时候不必马上解决,我们一定要寻求最优的解决办法,多找几种办法,没必要找到办法就,马上去实行,多做一点对比。

END

主 编 | 张祯悦

责 编 | 桂 军

如果觉得《linux下mysql写中文变成问号_如何解决数据库插入中文字体时显示问号》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。