php中文变问号mysql5_详解Mysql5.7中文乱码问题的解决方法

在使用mysql5.7时,会发现通过web端向数据库中写入中文后会出现乱码,但是在数据库中直接操作SQL语句插入数据后中文就显示正常,这个问题怎么解决呢,下面小编给大家分享下解决方案

在使用mysql5.7时,会发现通过web端向数据库中写入中文后会出现乱码,但是在数据库中直接操作SQL语句插入数据后中文就显示正常,这个问题怎么解决呢?此处不对MySQL的数据编码过程和原理进行讲解,如果有兴趣的同学可以自己百度。

下面我们就直接使用如下操作解决:

一、打开mysql控制台,输入命令show variables like 'character%';

显示如下:+--------------------------+-------------------------------------------+

| Variable_name      | Value                   |

+--------------------------+-------------------------------------------+

| character_set_client   | latin1                  |

| character_set_connection | latin1                  |

| character_set_database  | utf8                   |

| character_set_results  | latin1                  |

| character_set_server   | utf8                   |

| character_set_system   | utf8                   |

| character_sets_dir    | C:\MySQL\MySQL Server 5.0\share\charsets\ |

+--------------------------+-------------------------------------------+

二、修改my.ini文件[client]

default-character-set=utf8

[mysqld]

default-storage-engine=INNODB

character-set-server=utf8

collation-server=utf8_general_ci

三、重启后使用第一步的命令查看,如下:+--------------------------+----------------------------+

| Variable_name | Value |

+--------------------------+----------------------------+

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | latin1 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | latin1 |

| character_set_system | utf8 |

| character_sets_dir | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

还有character_set_database和character_set_server的默认字符集还是latin1。

四、输入命令:set names utf8;

重启后,使用第一步命令查看:+--------------------------+------------------------------------------------+

| 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:\wamp64\bin\mysql\mysql5.7.9\share\charsets\ |

+--------------------------+------------------------------------------------+

除了character_set_filesystem是binary外,其他都是utf8了,

这样在web端也设置成utf8编码就可以正常输入数据库了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值