一、报错说明
数据库此字段的字符集与整理字符集是否与SQL语句传递数据的字符集相同;不相同则会引发MySQL1366错误。
二、产生原因
windows 安装MySql 的时候选择的是默认的编码,创建数据库也选择默认编码,致使该库的编码默认gbk.
该库下的表默认也会是该gbk,字段默认也会是gbk.
三、解决方法
1、在my.ini(linux 是my.cf) 中添加
[client] default-character-set =utf8 [mysql] default-character-set =utf8 [mysqld] collation-server = utf8_unicode_ci init_connect ='SET NAMES utf8'
2、查看你的数据表和字段并修改
# 查看table编码方法 SHOW CREATE TABLE table_name; # 修改table 编码 ALTER TABLE table_name DEFAULT CHARACTER set utf8 # 查看 table 字段编码方法 SHOW FULL COLUMNS FOR table_name; # 修改 table字段编码方法
ALTER TABLE table_name MODIFY field_name varchar(32) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '' COMMENT '注释'
如果大家喜欢看小说可以到,183小说网