【发布时间】:2010-10-18 14:58:53
【问题描述】:
我有一个通用的用户/角色设置,带有一个 user_role 连接表。我正在尝试使用 Spring 的 HibernateTemplate 像这样批量删除所有锁定的用户:
getHibernateTemplate().bulkUpdate("delete from User where locked=?", true);
如果被删除的用户没有任何角色(user_role 表中没有记录),那么一切正常;但是,如果用户确实有角色记录,我会收到以下错误:
违反完整性约束 - 孩子 找到记录
角色在 User.java 中定义如下:
@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "user_role", joinColumns = { @JoinColumn(name = "user_id") }, inverseJoinColumns = @JoinColumn(name = "role_id"))
private Set<Role> roles = new HashSet<Role>();
那么即使用户有子记录,如何批量删除用户?谢谢!
【问题讨论】: