在用Spring Boot JPA的时候, @Query(value = "delete from search_vec where part = ?1 ", native
在用Spring Boot JPA的时候,
@Query(value = "delete from search_vec where part = ?1 ", nativeQuery = true) void dropByPart(int part);
导致异常:
Caused by: java.sql.SQLException: Statement.executeQuery() cannot issue statements that do not produce result sets.
解决方法:
在@Query
上加上@Modifying
,表示不需要返回值
@Modifying @Query(value = "delete from search_vec where part = ?1 ", nativeQuery = true) void dropByPart(int part);
这是因为,根据Spring data jpa官网
Doing so triggers the query annotated to the method as an updating query instead of a selecting one.
我猜测@Query
对应到底层jdbc框架是Statement.executeQuery()
,而@Modifying@Query
对应的是Statement.execute();
来源地址:https://blog.csdn.net/kakadiablo/article/details/128558954
--结束END--
本文标题: Caused by: java.sql.SQLException: Statement.executeQuery() cannot issue statements that do not produ
本文链接: https://lsjlt.com/news/420032.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-01
2024-04-03
2024-04-03
2024-01-21
2024-01-21
2024-01-21
2024-01-21
2023-12-23
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0