xampp中,当向mysql中插入数据时,中文显示成问号,是因为选用的编码不对或者编码不一致造成的,先用命令语句:show variables like '%char%';检查当前数据库的相关编码集,在问题没解决之前,我的显示为:
然后输入命令行语句:show create table 表名;查看数据库中表的编码方式(同样可以看到列的编码),我的显示是整个表都是latin1的编码方式,而中文需要用gbk或者utf8编码才可以正确的显示。
这里我是把除了character_ser_filesystem是binary其它都变成utf8,解决的过程如下:
在xampp control 面板中选择mysql后的Config->my.ini,向其中插入这四句话:
default_character_set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
default_character_set=utf8
他们各自插入的位置如下:
1、default_character_set=utf8插入的位置:
2、character-set-server=utf8
collation-server=utf8_general_ci 插入的位置:
3、default_character_set=utf8插入的位置:
修改完后再次检查数据的字符集:
现在更改成功了!
重新启动mysql,新建一个数据库试试,记得新建的数据库是在utf8的排列规则上的
我修改后新建的数据库: