这个问题与this有关,因为我与孩子和父母之间存在单向@ManyToOne
关系。有数十万个子条目,我不希望父母与子女有@OneToMany
的关系。
一切正常,除非我删除父母是不可能的,除非我先删除孩子,我希望通过ON DELETE CASCADE
实现Postgres轻松提供的内容。我正在使用Postgres 9.我也在使用JPA 2.0 / Hibernate 4.1.7。
我目前正在使用Hibernate的自动DDL创建功能,因为我经常移动东西,所以我不想在表上手动添加ON DELETE CASCADE
,因为它们将在下次删除我做了一些改变。
有什么方法可以将ON DELETE CASCADE
约束/触发器作为JPA @ManyToOne
注释的一部分放在子实体中?这样就可以自动正确创建数据库。
答案 0 :(得分:4)
使用JPA注释,没有。但是Hibernate有@org.hibernate.annotations.OnDelete
。
@ManyToOne
@JoinColumn
@OnDelete( action = OnDeleteAction.CASCADE )
private Parent parent;
EG正在讨论在JPA 2.1
中添加类似的内容