问题:
使用source file.sql 将数据导入mysql,但是其中有字段的值为中文,出现以下报错。
解决方法:
1、首先使用 show create table table_name 查看该表 的CHARSET:可以看出默认的 CHARSET 为 latin1,使用下述指令修改默认的 CHARSET:
alter table table_name CHARSET=utf8;
执行成功后,在通过show create table table_name 查看,发现该表的默认 CHARSET 已经修改为 utf8。2、继续使用 source file.sql 导入数据,但是仍然报同样的错,继续使用 show create table table_name 查看,发现插入数据为中文的字段的默认 CHARSET 还是为latin1。
使用下述指令,修改该字段的默认 CHARSET:
ALTER TABLE table_name CHANGE c1 c1 VARCHAR(20) CHARACTER SET utf8;
3、修改后,在执行插入数据,成功。