java - hibernate java ORA-02292 : integrity constraint violated - child record found Course with Review

标签 java hibernate

当我想删除任何类(class)的ID时,与该类(class)相关的评论也可以删除。但是控制台出现了一个问题。

Hibernate java ORA-02292:违反完整性约束 - 找到子记录

类(class).java

@OneToMany(fetch=FetchType.LAZY, cascade=CascadeType.ALL,mappedBy="course")
    private Set<Review> reviews = new HashSet<Review>();

Review.java

@ManyToOne(fetch=FetchType.LAZY,cascade=CascadeType.ALL)
    @JoinColumn(name = "COURSE_ID", nullable = false)
    private Course course;

我尝试使用orphanRemoval=true,但没有任何改变。

如何解决这个问题?

最佳答案

将子表中的外键约束指定为ON DELETE CASCADE。您需要在调用 EntityManager.remove(course) 后调用 EntityManager.clear(),因为需要刷新持久性上下文 - 子实体不应存在在数据库中删除它们后,在持久性上下文中。

@ManyToOne(fetch=FetchType.LAZY,cascade=CascadeType.ALL)
@JoinColumn(name = "COURSE_ID", nullable = false)
@OnDelete(action = OnDeleteAction.CASCADE)
private Course course;

关于java - hibernate java ORA-02292 : integrity constraint violated - child record found Course with Review,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57672154/

相关文章:

java - MapReduce Nutch 教程

java - Netbeans 历史记录显示有 100 个更改,但我只做了几个。我该如何避免这种情况?

hibernate - 使用 JConsole 监控 c3p0(使用 hibernate 和 Tomcat)

java - 部署 tomcat webapp 时出错 | java.lang.IllegalStateException : ContainerBase. 添加子

postgresql - 使用无法访问 hibernate 创建的 Google Cloud SQL (Postgres) 表

java - "table-layout"库(Toolkit 类)中的 Scala 无法满足的循环依赖

Java套接字测试返回空值

java - 是否可以将 soap 消息写入 xml 文件?

java - 创建 HibernateJpaVendorAdapter 实例失败。为什么?

java - 如何使用 Envers 审核 Hibernate 读取?