解决MySql插入中文报错的问题

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..

原文地址:https://www.cnblogs.com/ltb6w/p/10199677.html

时间: 2024-07-31 12:07:39

解决MySql插入中文报错的问题的相关文章

mysql 插入中文报错: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value...

总结写在前面, 总结: 当Java通过jdbc链接mysql插入中文时,要保证程序可以正常执行,而且插入的中文不会乱码, mysql服务器端,对数据表(不是数据库)的编码设置,要保证是支持中文的,例如gbk, gb2312, utf-8 jdbc的连接配置,要开启useUnicode=true,并且要设置一个支持中文的编码,不需要跟mysql表的编码保持一致,只需要支持中文就行.例如characterEncoding=utf8 本身的Java文件的编码需要支持中文 ===============

mysql插入中文报错的问题

报错:1366, "Incorrect string value: '\\xE6\\xB7\\xB1\\xE5\\x85\\xA5...' for column ' 由于公司原因之前一直在使用oracle,最近做一个es+springboot练习时使用到mysql发现在插入中文时不能正常成功; 解决办法: 在创建数据库时就将库中的编码格式设置好:default charset utf8 collate utf8_unicode_ci; create database bdname default

解决mysql插入中文字符报错的问题ERROR 1366 (HY000): Incorrect string value: ‘\xE5\xB0\x8F\xE6\x98\x8E‘ for column ‘name‘ at row 1

原文:解决mysql插入中文字符报错的问题ERROR 1366 (HY000): Incorrect string value: '\xE5\xB0\x8F\xE6\x98\x8E' for column 'name' at row 1 报错内容: mysql> insert into person values (1,22,'小明');ERROR 1366 (HY000): Incorrect string value: '\xE5\xB0\x8F\xE6\x98\x8E' for colum

客户端cmd打开mysql,执行插入中文报错或插入中文乱码解决方案

最近在制作一个安装包,需要安装的时候执行mysql脚本儿,做了一个批处理,但是发现总是执行到 插入中文的时候报错,或者插入中文是乱码. 网上查了好多资料,说是把编码改成GBK什么的,终究还是不成功. 最后经过多次测试,现把解决方案分享给大家. 第一步:打开mysql中的配置文件,my.ini,看一看配置文件中 [mysql] default-character-set=utf8 [mysqld] character-set-server=utf8 看是不是这样配置的.因为utf8 是国际通用的,

mysql插入数据 报错[Err] 1136 - Column count doesn't match value count at row 1(表中有自增列)

版本:8.0.16 创建了一张表:create table user_table(uid int primary key auto_increment,uname varchar(10))auto_increment=1 插入数据报错: 经查找 ,有三种方式可以解决这个问题: 1.插入数据得时候,带入列名: insert into user_table("uname") values ("刘一") 2.自增键这列设置为0 insert into user_table

MySql 插入数据库报错 Incorrect string value: '\xF0\xA0\x86\xA2'

今天从nginx日志分析搜索关键字,然后把关键字插入到Mysql数据库里,出现如下错误 SQL state [HY000]; error code [1366]; Incorrect string value: '\xF0\xA0\x86\xA2' for column 'XXXX' at row 38; nested exception is java.sql.SQLException: Incorrect string value: '\xF0\xA0\x86\xA2' for column

ubuntu下解决mysql插入中文乱码(???)的问题

一.原因     myeclipse中插入中文发现不仅在mysql中且在myeclipse中查询都显示???  ?二.解决 ?     网上看了很多资料,如果在mysql中直接修改,重启mysql后就失效,一般修改my.ini文件,当然在ubuntu下是my.cnf.修改的过程可参考http://blog.knowsky.com/190431.htm     但在我进行修改的过程中发现:         找到[mysqld]在下面加入        default-character-set=u

MySQL插入中文数据报错

在操作数据库插入中文会出现如下错误: ERROR 1366 (HY000): Incorrect string value: '\xC4\xE3\xBA\xC3' for column 'username' at row 1 解决方案: 在cmd中查看当前数据库的编码设置:Server.Db.Client.Conn 各自的编码是否是如下设置 若Client和Conn 编码不是平台码就会出现中文乱码情况获报错.修改MySQL安装文件下的 My.ini 文件即可. 注意: 在MySQL的5.1版本时

mysql 插入语句报错之一

#添加学生信息INSERT INTO student VALUES('108','曾华','男','1977-09-01','95033'); 在mysql中插入上面一条信息数据,mysql出现下面错误 1 queries executed, 0 success, 1 errors, 0 warnings 查询:insert into teacher values('804','李诚','男','1958-12-02','副教授','计算机系') 错误代码: 1366Incorrect stri