Mysql 插入中文错误:Incorrect string value: '\xE7\xA8\x8B\xE5\xBA\x8F...' for column ? row ?

出现这个错误的原因是,数据库的编码格式为latin1 而我要将utf8的中文插入到数据库中。

修改数据库的编码:

alter table tablename default character set utf8;  

但是插入中文依然出现错误,然后通过查看数据表编码:


Mysql 插入中文错误:Incorrect string value: '\xE7\xA8\x8B\xE5\xBA\x8F...' for column ? row ?_第1张图片


注意!列的编码仍然为 latin1,虽然此时表的编码已经是 utf8 , 但是不知道为什么列的编码没有更改过来,下面就是更改列的编码即可

修改表的编码方式:ALTER TABLE `test` DEFAULT CHARACTER SET utf8;该命令用于将表test的编码方式改为utf8; 
修改字段的编码方式:ALTER TABLE `test` CHANGE `name` `name` VARCHAR(36) CHARACTER SET utf8 NOT NULL; 

该命令用于将表test中name字段的编码方式改为utf8

修改之后即可

你可能感兴趣的:(数据库)