削除JPAオブジェクトが失敗による外部キー制約をもたらすのか
質問
ルのうち、以下のクエリの失敗による外部キー制約が?外の方法がある訳ではありません私にとって削除に関連するデータと認識しています。
Query query=em.createQuery("DELETE FROM Person");
query.executeUpdate();
em.getTransaction().commit();
のだと思い、加害関係が問題にな activationKey
分野:
2029 [main] ERROR org.hibernate.util.JDBCExceptionReporter - integrity
constraint violation: foreign key no action; FKCEC6E942485388AB
table: ACTIVATION_KEY
アドバイスをお聞かせ下さい:
@Entity
@Table(name="person")
public class Person implements Comparable<Person> {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name="id")
private long id = 0;
@ElementCollection
@Column(name = "activation_key")
@CollectionTable(name = "activation_key")
private Set<String> activationKey = new HashSet<String>();
}
解決
ルのうち、以下のクエリの失敗による外部キー制約が?
おかしくなってしまいそうです。一括削除クエリは削除の作品をコレクションからテーブル、そのために外部キー制約の違反です。
が、JPA仕様の明示的に書き込みを一括削除はカスケード型を関連団体:
4.10一括更新、削除の操作
...
削除操作のみに適用され 主体が、指定されたクラス そのサブクラス.なカスケードを なんら関係がありません。
なお場合びていく、ということだと考えていただきます。
しょ向の制限を、Hibernateの一括削除は、例えば:
- HHH-3337-Hibernateを無視@JoinTable生成時に一括更新、削除、自社の事業体
- HHH-1917-バルクの削除を所有する側のManyToMany関係のニーズを削除する対応する列からJoinTable
をご提案いたし上げます。
回避策:アーカイブにより容量を節約のクエリを削除するコテーブルとしての体表に示す。
所属していません StackOverflow