相关疑难解决方法(0)

使用Element Collections时如何在JPA中进行批量删除?

Person对象包含使用@ElementCollection存储的数据时,我无法解决如何使用JPA 批量删除Person对象的问题.关于如何做到这一点的任何想法将非常感激.

@Entity
@Table(name="at_person")
public class Person implements Comparable<Person> {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name="id")
    private long id = 0;

    @Column(name="name", nullable = true, length = 128)
    private String name = "";

    @ElementCollection
    @Column(name = "email")
    @CollectionTable(name = "person_email", joinColumns = @JoinColumn(name = "person_id"))
    private Set<String> email = new HashSet<String>();
}
Run Code Online (Sandbox Code Playgroud)

我目前正在做的是这个,并且它因外键约束错误而失败:

Query query=em.createQuery("DELETE FROM Person");
Run Code Online (Sandbox Code Playgroud)

引起:java.sql.SQLException:完整性约束违规:外键无动作; FKCEC6E942485388AB表:PERSON_EMAIL

如果它可以是纯粹的JPA注释而不是Hibernate注释,那将是一个奖励!

java orm hibernate jpa jpa-2.0

15
推荐指数
1
解决办法
8732
查看次数

标签 统计

hibernate ×1

java ×1

jpa ×1

jpa-2.0 ×1

orm ×1