4

嗨,我想通过提供其 entityClass SptTutorials 的对象来从表 spt_tutorials 中删除一条记录。我正在编写这样的命名查询。

@NamedQuery(name = "SptTutorials.deleteVideo", query = "DELETE s FROM SptTutorials s WHERE s.SptTutorials = :SptTutorials")})

其中 SptTutorials 是实体类,我通过 WHERE 子句传递的参数是一个 SptTutorials 对象。此查询是否正确。

4

1 回答 1

6

由于“SptTutorials”不是SptTutorials 中的字段,因此请修复您的查询。“s.SptTutorials”表示对象“s”(SptTutorials 类型)的字段“SptTutorials”。也许

DELETE FROM SptTutorials s WHERE s = :param

或者

DELETE FROM SptTutorials s WHERE s.id = :id

其中“id”是要删除的 SptTutorials 对象的标识(字段)。所有这些都可以在快速阅读 JPA 规范或许多在线 JPA 文档中看到

于 2012-05-14T14:09:59.613 回答