Mysql 关于 ' 1366-不正确的字符串值:“XE5\XBC\xao\xE4\xB 8\x89‘表示列’name‘在第1行
在向数据库中添加英文测试数据时没问题,但是添加中文测试数据时会报一个错误:1366 - Incorrect string value: "xE6|x96\x87\xE5\xA9\xB7’ for column ‘name’ at row 1.
译为:1366-不正确的字符串值:“XE6\X96\X87\XE5\xa9\xB7‘表示列’name‘在第1行。
原因是由于你的数据库编码、排序类型不是utf-8的,所以你创建的表的排序规则自然也不是utf-8类型的。
- 在mysql中新建数据库,如果只写数据库名,没有设置字符集和排序规则,默认字符集为latin1 ,排序规则为latin1_swedish_ci 。
所以在新建数据库是一定要记得设置字符集为“utf8”,排序规则设置为utf8_general_ci,如图:
这里可以把字段的字符集设为utf8,把排序规则设置为utf8_general_ci,保存,就可以添加了。
最直接的办法就是删了重新创建的,然后就可以了。
总结:只要数据库存储中文数据,创建数据库的时候千万别忘了设置字符集为utf8。
版权声明:本文为daishan_sun原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。