是否有可能使用CriteriaQuery查询实体的更新/删除类型安全操作?
我的具体情况是,因为我想在一段时间后用EclipseLink删除一些实体集时避免使用Native查询。我正在使用Date比较并使用Native SQL。您认为这对我的情况来说是最好的用例吗?我个人认为ORM提供程序应该生成SQL并避免使用本机SQL。
提前感谢您的推荐, 西蒙
答案 0 :(得分:1)
Criteria API尚不支持批量操作,但您可以使用常规JPQL更新和删除查询。提供程序将它们转换为SQL。在大多数情况下,不需要自己编写本机SQL。
例如 - 提高员工工资然后解雇他:
UPDATE Employee e
SET e.salary = 99999
WHERE e.salary = 88888
DELETE FROM Employee e
WHERE e.salary = 99999