mysql插入中文数据报错 java.sql.SQLException: Incorrect string value: '\xE5\x90\x88\xE8\xAE\xA1' for column

    向mysql数据库中insert 中文信息的时候,会报这个错误。昨天为了这个错误折腾我好久,原因其实。。。让我捧腹。觉得很有必要记录下来,以免以后再犯这种小迷糊。

    昨天试了很多,比如到C:\Program Files (x86)\mysql\MySQL Server 6.0\my.ini,把client和server的字符集都设成gb2312    即 default-character-set=gb2312,然后重启mysql service和client 。 以及  "create table  user(id varchar(7) primary key,name varchar(20)) charset utf8 collate utf8_general_ci);"(这样有用,但是总不能以后每次添加的时候都加吧)。甚至还有一些人建议过滤字符呀之类的方法,总之感觉都是浪费时间,不能解决根本。


出现这种问题的根本就是在数据库,说什么字符是latin呀之类的错误,其实还是

    1.我们创建数据库的时候没有更改数据库的字符集为utf8。

在mysql工具中,右击数据库,->"改变数据库",->选择“基字符集”为utf-8;


    2,数据库中表的字符集没有更改。

右击数据库表,->"改变表",->选择“字符集”为utf-8;

好了,就这两步。更改一下就OK了。



  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值