【问题标题】:Hibernate delete parent and child recordsHibernate删除父子记录
【发布时间】:2012-12-27 12:11:24
【问题描述】:

我有两个带有这样注释的表:

公司:

@OneToMany(mappedBy="company",fetch=FetchType.LAZY)
private List<Employees> employees;

员工:

@ManyToOne(cascade=CascadeType.ALL)
@JoinColumn(name="idCompany")
private Company company;

当我尝试删除父级(公司)时,它不会删除任何一个。 感谢您的帮助:)

【问题讨论】:

标签: java database hibernate hibernate-mapping


【解决方案1】:

将此注释添加到您的字段

@Cascade(value = {org.hibernate.annotations.CascadeType.ALL,
org.hibernate.annotations.CascadeType.DELETE_ORPHAN})

【讨论】:

  • DELETE_ORPHAN 已弃用且无法识别。
  • 将 orphanRemoval=true 添加到您的 @OneToMany 注释
  • 我做了,但现在给我这个错误:无法删除或更新父行:外键约束失败
  • 创建一个删除函数,首先删除列表中的所有员工,然后删除对象(当您从列表中删除员工时,如果他们没有参考,他们将被删除)
猜你喜欢
  • 1970-01-01
  • 2018-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多