使用batch方式在mysql数据库插入数据,源数据表A数据如下:
A这张表是没有主键约束的。
从A查询这些数据,插入到相同表结构的B表中。
B表的id是主键约束。
插入结果如下:
可以看出,重复的保留了一条,且是后面一条。并且前面的重复对后面的数据插入没有影响。在批处理执行完后抛出DuplicateKeyException。
批处理,需要考虑对数据库约束去重,避免脏数据或丢数据。
SQL state ‘23000‘, error code ‘1062‘, message [Duplicate entry ‘2‘ for key ‘PRIMARY‘]-batch批处理问题小结
场景使用batch方式在mysql数据库插入数据,源数据表A数据如下:A这张表是没有主键约束的。从A查询这些数据,插入到相同表结构的B表中。B表的id是主键约束。插入结果如下:可以看出,重复的保留了一条,且是后面一条。并且前面的重复对后面的数据插入没有影响。在批处理执行完后抛出DuplicateKeyException。总结批处理,需要考虑对数据库约束去重,避免脏数据或丢数据。...
近日一直在折腾vps ,刚刚碰到在搬移wordpress过程中导入
数据库
的时候。碰到了 #
1062
–
Dupli
cat
e
entry
‘1′ for
key
‘
PRIMARY
’ 当时那个急啊,原本的数据我已经全部删除了,没办法只有请求万能的百度了。我找了大半天终于给我给我找到了。兴奋ing,马上测试,O(∩_∩)O哈哈~成功了。 现在附上解决办法只要把原来的老数据清空导入就可以了。 原理我不明白,贴上来你们自己看吧。反正达到目的就ok了、 “提示#
1062
–
Dupli
cat
e
entry
‘1′ for
key
‘
PRIMARY
’了,后来才知道,原来上次超过限制的已经导进去了一部分,而i
20:26:04,125 WARN org.hibernate.util.JDBCExceptionReporter:100 -
SQL
Error
:
1062
,
SQL
State
:
23000
报这个错是因为插了2条一样的数据,改成不一样的就能测试通过了
今天遇到调代码的时候遇到一个
问题
,就是我删除了
数据库
的所有的记录之后,然后通过前台页面的注册页面进行注册 ,
但是报出
SQL
Error
: 1452,
SQL
State
:
23000
; 其他错误如下:
[tom
cat
-http--5] WARN org.hibernate.engine.jdbc.spi.
Sql
ExceptionHelper -
SQL
Error
: 1452, SQ...
SQL
Error
:
1062
,
SQL
State
:
23000
今天项目快上线时遇到的
问题
,快上线了就将
数据库
中的脏数据清了清,结果清到一半被拉去讨论一个
问题
。回来给忘了,结果提交申请的时候报了这个错。然后接着把改清的清干净了,就好了。