com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:

问题描述

WEB系统报以下的错,是为什么? Caused by: java.sql.BatchUpdateException: Duplicate entry '3592030993-2011-11-23 19:22:45' for key 'PRIMARY'at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:2024)at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:1449)at weblogic.jdbc.wrapper.PreparedStatement.executeBatch(PreparedStatement.java:157)at com.longshine.indigo.dbutils.manager.WrapperStatement.executeBatch(Unknown Source)... 47 moreCaused by: com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException: Duplicate entry '3592030993-2011-11-23 19:22:45' for key 'PRIMARY'at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1036)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3597)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3529)at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1990)at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2151)at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2625)at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2119)at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2415)at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1976)... 50 more 问题补充:asyty 写道

解决方案

引用Caused by: java.sql.BatchUpdateException: Duplicate entry '3592030993-2011-11-23 19:22:45' for key 'PRIMARY' 像asyty说的,报这个错,是有批量插入的时候才会出现的异常,不妨试试
解决方案二:
引用'3592030993-2011-11-23 19:22:45' for key 'PRIMARY' 表结构是什么样子的, 这个值 好像是编号+ 时间????引用数据库中的数据是空的,网上也找了资料说是字符集的问题,也试了,都不行 你试着把主键去掉,看看数据能不能写进去
解决方案三:
字符集的问题的可能性比较小。。。。。可能是java代码里在执行过程中数据冲突,你是数据库空的时候只插入一条数据出错的呢还是批量插入多条记录的时候出错的呢能贴一点代码嚒
解决方案四:
重复插入数据了吧, '3592030993-2011-11-23 19:22:45' for key 'PRIMARY',主键重复了
解决方案五:
主键冲突了,检查下数据库的数据,跟写入的数据吧

时间: 2024-12-21 00:28:11

com.mysql.jdbc.exceptions.MySQLIntegrityConstraintViolationException:的相关文章

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 解决办法

09:00:30.307 [http-8080-6] ERROR org.hibernate.transaction.JDBCTransaction -JDBC begin failed com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet successfully received from the server was 56,237,340 mi

数据库-异常:com.mysql.jdbc.exceptions.jdbc4.communicatio

问题描述 异常:com.mysql.jdbc.exceptions.jdbc4.communicatio 异常:com.mysql.jdbc.exceptions.jdbc4.communicationException:communication link failure last packet sent to the server was 0 ms ago at sun.refect.nativecon.........等等 我用的是mysql数据库,Java文件可以编译,但是一运行就出现错

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException错误

问题描述 请教大虾:以下错误如何解决:严重:Servlet.service()forservletactionthrewexceptioncom.mysql.jdbc.exceptions.MySQLSyntaxErrorException:Table'netctoss.pricing'doesn'texistatcom.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)atcom.mysql.jdbc.MysqlIO.checkE

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException异常求助

问题描述 具体错误是YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'5*fromforumwhereid>0orderbyiddesc'atline1异常代码如下图:分页代码如下:packagedao;importjava.sql.Connection;importjava.sql.PreparedStatement;impo

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'db_item'

    一直很奇怪,为什么报错,进入mysql命令行,show databases:发现多谢了一个空格,如上图.

MySQL JDBC 5.1.25的一个坑(应该算是BUG)

这是公司的一个重要项目中的真实案例(目前还未证实其它版本是否存在,不过刚看了最新版5.1 .26版本还是没有修复这个操作方式,不过用的小伙伴们要注意了哦): [该BUG,官方目前最新版本已经修复,详细请参考文章最后,大家注意使用的版本和原因即可] 什么样的情况呢,当在代码中使用connection.close()方法的时候,神奇般的StackOverflow了!没错,这就是JDBC自己导致的死递归,堆栈输出的内容如下所示: 这个堆栈信息可以这样反推程序:     ConnectionImpl.r

浅析MySQL JDBC连接配置上的两个误区

相信使用MySQL的同学都配置过它的JDBC驱动,多数人会直接从哪里贴一段URL过来,然后稍作修改就上去了,对应的连接池配置也是一样的,很少有人会去细想这每一个参数都是什么含义.今天我们就来聊两个比较常见的配置--是否要开启autoReconnect和是否缓存PreparedStatement. 一.autoReconnect=true真的好用么? 笔者看到过很多MySQL的URL里都是这样写的,复制过来改改IP.端口和库名就能用了: jdbc:mysql://xxx.xxx.xxx.xxx:3

mysql jdbc处理0日期格式蛋疼问题-也算是BUG

最近在写一个数据库访问的中间平台时,使用MySQL JDBC处理一些日期数据,遇到点变态的问题,给大家乐一乐! 首先来看看什么样的日期数据这么蛋疼呢? DATE            0000-00-00 DATETIME   0000-00-00 00:00:00 TIMESTAMP 0000-00-00 00:00:00 TIME               25:21:22 对于前3种情况,直接用JDBC读取,肯定会报错,报错信息类似这样: Value '0000-00-00' can n

sun.jdbc.odbc.JdbcOdbcDriver和com.mysql.jdbc.odbc.JdbcOdbcDriver的区别

问题描述 sun.jdbc.odbc.JdbcOdbcDriver用这个好像不需要驱动,用com.mysql.jdbc.odbc.JdbcOdbcDriver这个好像要下载什么驱动.我参考别人的的期刊管理系统中碰到这个问题,系统只有登录界面用不了就这一句.不明白,如果需要下载什么驱动,麻烦你给我一个下载地址,以及怎么安装,谢谢啦!! 解决方案