BatchUpdateException - MySQL Error 'Duplicate entry' - какой ключ / ограничение было нарушено? - PullRequest
0 голосов
/ 13 января 2011

Комбинация mysql / hibernate создает трассировки стека исключений, например

Caused by: java.sql.BatchUpdateException: Duplicate entry '7872551600-B1310955127' for key 2

в com.mysql.jdbc.ServerPreparedStatement.executeBatch (ServerPreparedStatement.java:652) в org.jboss.resource.adapter.jdbc.WrappedStatement.executeBatch (WrappedStatement.java:519) в org.hibernate.jdbc.BatchingBatcher.doExecuteBatch (BatchingBatcher.java:70) в org.hibernate.jdbc.AbstractBatcher.executeBatch (AbstractBatcher )java

Теперь то, что происходит, очевидно.Есть таблица с ограничением (уникальный ключ), и это ограничение было нарушено.

Но все исключение говорит о том, что какой-то ключ '2' был нарушен.Есть ли способ заставить mysql распечатать, какое ограничение было нарушено?или хотя бы на каком столе?

Спасибо, хольгер

1 Ответ

0 голосов
/ 13 января 2011

Ключ 2 - второй индекс в таблице. Если у вас есть первичный ключ, ключ 2 является первым индексом после этого.

Я не могу сказать вам, что это за таблица, но как только вы выясните это, если вы запустите SHOW CREATE TABLE для этой таблицы, второй индекс, который она перечислит, будет нарушен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...