Mysql数据库错误:ERROR 1366 (HY000): Incorrect string value: ‘xxxxx‘ for column

原因是MySQL8.0之前版本默认的字符集是latin1,修改为utf8即可。首先,我们使用下面的代码,查看字符集.

show variables like 'character%';

Mysql数据库错误:ERROR 1366 (HY000): Incorrect string value: ‘xxxxx‘ for column_第1张图片

 下面两行代码不是永久的,重启数据库会被刷新.就会变为原先的 latin1.

set character_set_database=utf8;
set character_set_server=utf8;

Mysql数据库错误:ERROR 1366 (HY000): Incorrect string value: ‘xxxxx‘ for column_第2张图片

此时,数据库的字符集是utf8,但是表的还没有变过来,修改表字符集的sql语句,至此问题解决;

ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8;

 因此,我们在创建数据库的时候不要偷懒,加上 'character set utf8mb4 collate utf8mb4_general_ci;'
会少很多麻烦.

Mysql数据库错误:ERROR 1366 (HY000): Incorrect string value: ‘xxxxx‘ for column_第3张图片

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