我希望在删除一个实体时同时删除另一个实体
这是第一个实体
@Table(name = "qualification")
public class Qualification {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "QUALIFICATION_PK_SEQ")
@SequenceGenerator(name = "QUALIFICATION_PK_SEQ", sequenceName = "QUALIFICATION_PK_SEQ", allocationSize = 1)
private Long id;
@JsonManagedReference
@OneToOne(cascade = CascadeType.ALL)
private User user;
//attributes, getters, setters
}
其他实体
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "USER_PK_SEQ")
@SequenceGenerator(name = "USER_PK_SEQ", sequenceName = "USER_PK_SEQ", allocationSize = 1)
private Long id;
@OneToOne(cascade = CascadeType.ALL)
private Qualification qualification;
//attributes, getters, setters
}
因此,当我删除用户时,出现此错误
异常错误:ora-02292找到完整性约束条件子记录
先谢了
1条答案
按热度按时间nbysray51#
你 必须 让 一 方 成为 " 所有 者 " , 另 一 方 成为 " 逆 方 " 。
使用 Map 时 , 必须 区分 用户 和 资格 之间 的 关系 。
您 可以 使用 mappedBy 属性 执行 此 操作 :
中 的 每 一 个
因此 , mappedBy 指向 关系 的 所有 者 方 。