2016-05-17 23 views
0

から予想外の行数を返された私は、次のexpectionを取得しています:私が持っているエンティティ(犬小屋)をカスケード削除しようとすると、org.springframework.orm.jpa.JpaSystemException:バッチ更新が更新

org.springframework.orm.jpa.JpaSystemException: Batch update returned unexpected row count from update [0]; actual row count: 3; expected: 1; nested exception is 
org.hibernate.jdbc.BatchedTooManyRowsAffectedException: Batch update returned unexpected row count from update [0]; actual row count: 3; expected: 1 
    at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:314) ~[spring-orm-4.2.4.RELEASE.jar:4.2.4.RELEASE] 

これが発生します別のエンティティ(犬)との1対多の関係。 (メソッドを削除CRUDリポジトリを使用して)

削除コード:

kennelRepository.delete(kennelEntity); 

ケンネルエンティティ(親):

@Entity 
@Table(name = "KENNEL") 
public class Kennel implements Serializable 
{ 
    //other fields and getters/setters 

    @OneToMany(mappedBy = "kennel", cascade = CascadeType.ALL, fetch = FetchType.LAZY, orphanRemoval = true) 
    private List<Dog> dogList = new LinkedList<Dog>(); 

犬エンティティ(子):

@Entity 
@Table(name = "DOG") 
public class Dog implements Serializable 
{ 

//other fields and getters/setters 

    @ManyToOne 
    @JoinColumns({ 
      @JoinColumn(name = "KENNEL_ID", referencedColumnName = "KENNEL_ID"), 
      @JoinColumn(name = "KENNEL_NUMBER", referencedColumnName = "KENNEL_NUMBER") 
    }) 
    private Kennel kennel; 

これを引き起こす原因は何ですか?マッピングが正しいことはほとんど確信していますか?

フェッチタイプをLAZYからEAGERに変更しようとしましたが、同じエラーです。

答えて

0

1.これは、エンティティがバックエンドデータベースから手動で手動で削除され、休止状態が再び削除しようとしている場合に発生します。

2.レコードを削除している他のプロセスがないことを確認してください。

+0

他のプロセスを削除していますか? – java123999

関連する問題