java - 不能混合使用 JPA 位置参数和 native Hibernate 位置/序号参数

标签 java hibernate jpa

我正在使用 Hibernate/JPA 执行 native PostGIS 查询。这些查询的问题在于它们需要不是经典 X = 'value' 形式的参数。

我的查询是:-

@Modifying
@Query(value="UPDATE memo SET readMemo = true and updatedBy_id = ?1 and updatedBy = ?1 and updatedOn = ?2 where assignToUser_id = 1? and readMemo = false and deleted = false ",nativeQuery = true)
void readAllMenoByCurrentUser(Long id, Date updateTime);

错误:-

org.springframework.dao.InvalidDataAccessApiUsageException: Cannot mix JPA positional parameters and native Hibernate positional/ordinal parameters; nested exception is java.lang.IllegalArgumentException: Cannot mix JPA positional parameters and native Hibernate positional/ordinal parameters

有谁知道在这种情况下如何解决?

最佳答案

您的查询中有 "1?"。这将意味着它试图将其解释为“?” (SQL 参数)而不是位置参数。将其更改为 "?1"

关于java - 不能混合使用 JPA 位置参数和 native Hibernate 位置/序号参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33984629/

相关文章:

java - Material 设计抽屉导航

java - 如何确定 Java 堆是否正在使用压缩指针以及是否驻留在内存中的地址 0?

java - 使用 POI 写入 xls 以获取大量数据,并根据需要创建新工作簿

multithreading - 使用 Hibernate SessionFactory 的多线程问题

java - 将具有外键的实体对象级联保存为复合主键的一部分

java - 有没有可以从给定坐标中提取文本的PDF解析库?

java - Tomcat 7 java.lang.NoClassDefFoundError : javax/el/ELManager 错误

java - Java.io.FileNotFoundException:类路径资源[../ProductDao.class]无法打开,因为它不存在

spring - JPA entityManager 不保存数据,flush 抛出 "no transaction in progres"异常

java - 为什么即使事务已提交,EntityManager 也会关闭?