向数据库中插入数据报错:1366 - Incorrect string value: ‘\xE5\xBC\xA0\xE4\xB8\x89’ for column ‘name’ at row 1

报错

向数据库中插入数据报错:1366 - Incorrect string value: ‘\xE5\xBC\xA0\xE4\xB8\x89’ for column ‘name’ at row 1
插入数据报错

造成这种错误的原因

建表的时候选择字符集弄错了,在mysql中新建数据库,如果只写数据库名,没有设置字符集和排序规则,默认字符集为latin1 ,排序规则为latin1_swedish_ci 如下
在这里插入图片描述

解决:

我尝试把数据库的字符集设为utf-8,把排序规则设置为utf8_general_ci,同时把表的排序规则也设置为utf8_general_ci,但是仍然不可以用,我看有博主说是mysql默认的配置文件是/etc/my.cnf或者/etc/mysql/my.cnf 我没找到这个文件,我的解决办法就是把表删了重新创建的,然后就可以了。

总结

只要数据库存储中文数据,创建数据库的时候千万别忘了设置字符集为utf-8。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值