Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: ‘\xE5\x8F\xB0\xE5\xBC\x8F…’ fo
分析如下:
首先通过语句查看: show create table tdb_goods_cates ;
发现如下所示:
然后通过语句修改数据表编码:alter table tdb_goods_cates default character set utf8;
但是修改后仍然出现错误。
我们再次查看编码:show create table tdb_goods_cates ;
发现如下所示:
注意 tdb_goods_cates 的编码仍然为 latin1 ,虽然此时表的编码已经是 utf8 , 但是不知道为什么 列的编码没有更改过来
下面就是更改列的编码即可
alter table tdb_goods_cates change cate_name cate_name varchar(40) character set utf8;
小结:
1)修改表的编码方式:
ALTER TABLE `test` DEFAULT CHARACTER SET utf8;
该命令用于将表test的编码方式改为utf8;
2)修改字段的编码方式:
ALTER TABLE `test` CHANGE `name` `name` VARCHAR(36) CHARACTER SET utf8 NOT NULL;
该命令用于将表test中name字段的编码方式改为utf8