** mysql 插入报错ERROR 1366 (HY000): Incorrect string value: ‘\xE6\x9D\x8E\xE5\x8B\x87’ for column ‘sname’ at row 1**
解释:
已建立的表无法插入中文字符串,原因是因为数据表中的内容为latin1字符集,由下图的的资料可知,latin1字符集为8bit,这说明它是不能表示中文的,故而当然会报改错:
解决办法:
1.将该数据表的编码格式全部设置为utf8格式
alter table Student default character set utf8;
2.将单独的字段编码格式设置为utf8格式
alter table Student change Sname Sname varchar(8) character set utf8;
实际操作中,依然是一个一个的字段进行修改
查看数据表的编码:
show create table Student;
##插入时间报错ERROR 1292 (22007): Incorrect datetime value: ‘1974’ for column ‘sbirthday’ at row 1
解释:datetime插入的时间格式问题
解决办法:1987-01-12 改成 12/01/1987