【报错】BatchUpdateException: Data truncation: Data too long
来源:互联网 发布:淘宝实名制更改 编辑:程序博客网 时间:2024/06/10 04:27
【报错】
log4j:WARN No appenders could be found for logger (org.hibernate.type.BasicTypeRegistry).
log4j:WARN Please initialize the log4j system properly.log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Tue Jun 28 15:11:58 CST 2016 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
Hibernate: insert into User (name, password, createTime, expireTime, id) values (?, ?, ?, ?, ?)
org.hibernate.exception.DataException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:102)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:133)
at com.tgbnode.hibernate.Client.main(Client.java:35)
Caused by: java.sql.BatchUpdateException: Data truncation: Data too long for column 'id' at row 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
at com.mysql.jdbc.Util.getInstance(Util.java:387)
at com.mysql.jdbc.SQLError.createBatchUpdateException(SQLError.java:1161)
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1773)
at com.mysql.jdbc.PreparedStatement.executeBatchInternal(PreparedStatement.java:1257)
at com.mysql.jdbc.StatementImpl.executeBatch(StatementImpl.java:958)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
... 8 more
Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'id' at row 1
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3964)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3902)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2526)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2673)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2549)
at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1861)
at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2073)
at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1751)
... 12 more
【解决】
1. 可能是因为数据库里的表设置的字符集不相同。
解决方法:将数据库、库表、字段的字符集设置成一致。
2. 也可能真是数据库字段里数据库确实过长(本次就是遇到的这种情况)。
去数据库中,修改 varchar 字段长度,将20调整为40,即可。
3. 对某些不常见的字符( 比如 “ · ? 空白符号 “ ) 会出现Data too long for column
采取 ` 字符,即可 。
详见:
MySQL 中 ` 的保留字冲突处理
详址:http://blog.csdn.net/u013630349/article/details/51777115
0 0
- 【报错】BatchUpdateException: Data truncation: Data too long
- java.sql.BatchUpdateException: Data truncation: Data too long for column
- java.sql.BatchUpdateException: Data truncation: Data too long for column 'site_name' at row 1
- Caused by: java.sql.BatchUpdateException: Data truncation: Data too long for column 'cont' at row 1
- Caused by: java.sql.BatchUpdateException: Data truncation: Data too long for column 'JLFSM' at row 1
- Data truncation: Data too long for column 'contents_o' at row 1 报错原因
- 报错Java.sql.SQLException: Data truncation: Data too long for column 'content' at row 1 Query
- MySql的Blob字段报错:Data truncation: Data too long for column 'CONTENT' at row 1
- [Mysql] Data truncation: Data too long for column ......
- mysql插入错误 Data truncation: Data too long for column
- Mysql MysqlDataTruncation Data truncation Data too long for column
- Data truncation: Data truncated for column/Data too long for column问题解决
- Data truncation: Data truncated for column/Data too long for column
- Hibernate插入数据时报错Data truncation: Data too long for column 'name' at row 1 解决办法
- Data truncation: Data too long for column 'name' at row 解决方案吗
- Data truncation: Data too long for column 'name' at row 1的处理
- com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'title' at row 1
- com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'title' at row 1
- [iOS 第三方]画图保存 获取Image(适用签名)
- 手机轮播图手势滑动
- Java反射的作用
- js 判断字符串是否包含某字符串,String对象中查找子字符indexOf,查找字符串出现的次数split
- java中常用的设计模式
- 【报错】BatchUpdateException: Data truncation: Data too long
- C++ 对象的内存布局(多重虚拟继承)
- mysql消除重覆记录
- poj 2813 画家问题(枚举解决一维和二维)
- Hibernate技术文档
- ibatis中使用like模糊查询
- Qt使用MinGW编译,如何忽略警告
- 发布给用户的apk没有签名如何升级?
- http报文学习笔记