答案 0 :(得分:0)
可能很少有其他事情影响这一点,因为设置整理通常是不够的:
默认情况下,您的连接未使用UTF-8。请在连接到MySQL之后添加它(在进行任何插入之前):
query("SET NAMES utf8");
现在检查你的数据,如果新行是正确的,那么只需在mysql连接功能之后添加它。
您的数据未在服务器中存储为UTF-8。要检查此信息,请运行以下查询:
show variables like 'char%';
这应该仅返回utf8
(文件系统通常为binary
除外)。如果没有,那么您的MySQL服务器没有完全配置为支持UTF-8。
<强>更新强>
要将MySQL服务器设置为完全支持UTF-8,请编辑my.cnf
文件(通常在/etc/mysql
中)并添加以下内容:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
更改后,重启MySQL服务器,连接MySQL并执行这些操作(将数据库更改为数据库名称):
use database;
set character_set_database=utf8;
set character_set_server=utf8;