1

フラッシュ中に以下の休止状態のエラー メッセージが表示されます。for ループで反復し、DB からオブジェクトをフェッチして変更し、各反復でオブジェクトを保存します。最初の 20 レコードではエラーは発生しません。次のレコードでは、以下のエラーがスローされます。助言がありますか ?ありがとう !

 WARN [main] (org.hibernate.util.JDBCExceptionReporter:233) - SQL Error: -803, SQLState: 23505

ERROR [main] (org.hibernate.util.JDBCExceptionReporter:234) - DB2 SQL エラー: SQLCODE: -803、SQLSTATE: 23505、SQLERRMC: 3;REFERN.METHODOLOGY ERROR [main] (org.hibernate.event.def.AbstractFlushingEventListener :324) - データベースの状態をセッション org.hibernate.exception.ConstraintViolationException と同期できませんでした: 更新できませんでした: [com.MethodologyDO#1396] at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96) at org. org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2594) の hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66) org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java: 2476) org.hibernate.persister.entity.AbstractEntityPersister で。update(AbstractEntityPersister.java:2803) org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:113) org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273) org.hibernate.engine.ActionQueue org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185) の .executeActions(ActionQueue.java:265) org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321) の org.hibernate. event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51) org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216) org.springframework.orm.hibernate3.HibernateTemplate$28.doInHibernate(HibernateTemplate.java:892 ) org.springframework.orm.hibernate3.HibernateTemplate で。org.springframework.orm.hibernate3.HibernateTemplate.executeWithNativeSession(HibernateTemplate.java:374) で doExecute(HibernateTemplate.java:419) org.springframework.orm.hibernate3.HibernateTemplate.flush(HibernateTemplate.java:890) で

4

1 に答える 1

3

エラーで SQLState の言及をグーグルで検索すると、次のページにたどり着きました。 core/r0sttmsg.htm .

ユニーク制約が壊れています。データを挿入/更新しようとしていますが、一意の制約を持つ列で 2 つの行が同じ値を持つことになります。

于 2012-08-07T11:05:01.397 に答える