20:43:51 INSERT INTO course(cno,cname,cpno,ccredit) VALUES ('81001','C语言',NULL,4) Error Code: 1366. Incorrect string value: '\xE8\xAF\xAD\xE8\xA8\x80' for column 'cname' at row 1 0.000 sec
解决方法:alter table TABLE_NAME convert to character set utf8mb4;
MySQL中的字符集utf8和utf8mb4都是用于存储Unicode字符的编码方式,但它们之间存在一些区别
-
utf8:是MySQL早期采用的一种字符集编码,支持最多三个字节的字符,但它不包含一些表情符号(Emoji),这些字符需要四个字节进行编码,因此在存储这些字符时会出现错误或者乱码。
-
utf8mb4:是utf8的超集,支持最多四个字节的字符,因此能够兼容Emoji表情及其他一些特殊字符。
如果你的数据库需要存储Emoji或者其他四个字节的Unicode字符,建议使用utf8mb4字符集