一.错误原因
先说结论哈:就是字符集不匹配造成的
二.分析原因
1.建表(简单示例)
create table test_updata(
id int,
name varchar(10),
gender int,
math_score float,
chin_score float
)
注意:这种方式建完表之后数据格式会为: latin1(不可以正常执行插入操作),有的会自动识别为utf8(可正常执行插入操作)
2.插入数据
insert into test_updata(id,name,gender,math_score,chin_score)values(1,'石昊',1,99,99);
insert into test_updata(id,name,gender,math_score,chin_score)values(2,'清漪',1,99,99);
insert into test_updata(id,name,gender,math_score,chin_score)values(3,'雨生',1,99,99);
insert into test_updata(id,name,gender,math_score,chin_score)values(4,'月婵',1,99,99);
insert into test_updata(id,name,gender,math_score,chin_score)values(5,'兔子',1,99,99);
insert into test_updata(id,name,gender,math_score,chin_score)values(6,'石毅',1,99,99);
执行完插入语句就会报错:
三.更改数据集(latin1--->utf8)
ALTER TABLE test_updata MODIFY COLUMN name varchar(10) CHARACTER SET utf8;
改完之后,即可执行插入操作