从非映射对象中删除hibernate和spring mvc

时间:2017-06-30 00:06:51

标签: java spring hibernate

我试图从数据库中删除用户,但问题是表用户和表角色附加到名为user_role的表中,但是这个表并没有自己拥有它因为它是这样创建的:

@ManyToMany(cascade = CascadeType.ALL)
@JoinTable(name = "user_role", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "role_id"))
private Set<Role> roles;

所以为了删除用户我需要从表user_role中删除它,现在当我尝试用这个函数执行此操作时

@Query("delete from user_role r where r.user_id = :userid")
 void deleteUserRole(@Param("userid") long id);

我收到此错误:

java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: user_role is not mapped [delete from user_role r where r.user_id = :userid]

任何有关解决此问题的建议都非常感谢,提前感谢

0 个答案:

没有答案