mysql插入中文时报错:incorrect string value

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql插入中文时报错:incorrect string value相关的知识,希望对你有一定的参考价值。

我设置过字符集为utf8,
show variables like '%char%';显示的值也都是utf8。
但是insert中加入中文的时候还是会报错。
错误信息:incorrect string value
在网上查的方法我基本都试过了,求大侠帮帮忙

你试过那些?
set names gbk?
还有,表的字符集改了吗追问

试过set names utf8。
什么的字符集我都统一改成utf8了。
在my.ini也改过,CHARSET utf8; 也试过。
网上的方法说的基本都是把字符集改了基本就没问题了....

追答

用set names gbk,然后再插入中文试试

参考技术A 查查你要插入数据库文字的字符集是什么,可能不是utf-8

向 mysql 插入汉字时报错 Incorrect string value: 'xE6x9BxB9xE5x86xAC...' for col....

Incorrect string value: \'\\xE6\\x9B\\xB9\\xE5\\x86\\xAC...\' for column \'realname\' at row 1

该情况一般是由数据库设计时的编码错误导致的。

show variables like \'character%\'   查看数据库编码,为latin1。

    

如果项目正在测试当中,数据不重要的话,一劳永逸的解决办法是,使用 alert database tuanplus character set utf8 更改数据库的编码格式,再重新建表。

注意:在 Hibernate中,指定hibernate.hbm2ddl.auto=create,重新部署项目,hibernate会自动重新建表。

     

如果项目中的数据是重要数据的话,使用 alter table address convert to character set utf8 转换需要插入汉字的数据表编码为utf8即可(此例中的数据表是address):

    

为免操作不当,事先最好先备份好数据。

 

备份是个好习惯,是吧  *~*

  

memento..

以上是关于mysql插入中文时报错:incorrect string value的主要内容,如果未能解决你的问题,请参考以下文章

在用mybatis向MySQL数据库中插入时间时报错:Incorrect datetime value: '' for column '' at row 1

向 mysql 插入汉字时报错 Incorrect string value: 'xE6x9BxB9xE5x86xAC...' for col....

特殊符号存入mysql数据库时报错:Incorrect string value: 'xF0x9Fx98x84xF0x9F的解决方法

mysql执行update语句时报错:Data truncation: Truncated incorrect DOUBLE value: 'null'

MySQL字符编码问题,Incorrect string value

Python2爬虫获取的数据存储到MySQL中时报错"Incorrect string value: 'xE6x96xB0xE9x97xBB' for