java - 为什么 Spring 数据抛出 java.sql.SQLException:ResultSet 来自 UPDATE。没有数据。关于执行本机 mysql 查询
问题描述
我正在mysql
使用执行以下查询spring-data-jpa
,
select 'FIRM NAME', 'USER_NAME', 'EMAIL', 'USER_PHONE', 'CLICK_COUNT', 'CLICK_DATE', 'PARTNER NAME'
union all select * from (select cf.cf_firm_name, u.u_name, u.u_email, u.u_phone, co.c_clicks,
co.c_click_date, p.p_name from click_offer co inner join user u on co.c_user_id = u.u_id inner join
c_firm cf on u.u_cpa_firm = cf.cf_id inner join offer of on co.c_offer_id = of.o_id inner join
partner p on of.o_partner_id = p.p_id) a into outfile '/var/lib/mysql-files/aafa.csv' fields
terminated by ',' optionally enclosed by '"' lines terminated by '\n';
但是在执行hibernate
成功创建文件后抛出异常,
Caused by: java.sql.SQLException: ResultSet is from UPDATE. No Data.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:965)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:898)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:887)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:861)
at com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:6301)
at com.zaxxer.hikari.pool.HikariProxyResultSet.next(HikariProxyResultSet.java)
at org.hibernate.loader.Loader.processResultSet(Loader.java:987)
at org.hibernate.loader.Loader.doQuery(Loader.java:949)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:341)
at org.hibernate.loader.Loader.doList(Loader.java:2692)
... 110 common frames omitted
但是当我尝试在 上运行相同的查询时mysql-workbench
,它正在执行而没有错误。
我正在使用以下代码从 spring 执行查询,
String query= DynamicQueryGenerator.queryToFetchOttomartClickCountDetails(ottoMartCsvGeneratorBean);
Query executableQuery = entityManager.createNativeQuery(query);
executableQuery.setParameter("from", fromDate);
executableQuery.setParameter("to", toDate);
if (!NullEmptyUtils.isNullorEmpty(ottoMartCsvGeneratorBean.getFirmIds())){
executableQuery.setParameter("firmIds", ottoMartCsvGeneratorBean.getFirmIds());
}
executableQuery.getResultList();
wherequery
包含mysql
要执行的查询。
解决方案
推荐阅读
- c# - 为什么视图没有从 SQL Server 更新数据
- c# - 将矩阵的选定元素返回到
- java - 使用 springboot 调度程序创建动态 cron 作业
- python - 逻辑回归与通过将数据拆分为 bin 来预测概率
- sql - 同时预订
- api - 尝试访问 api 时 GET 500(内部服务器错误)
- python - 有没有办法从 SQLAlchemy / FastAPI 关系中返回两个字段?
- macos - 在 MacOS 上的 zsh 终端中穿梭:“预期的服务器初始化字符串 b'SSHUTTLE0001';得到 b''”
- swift - 在 Xcode/Swift 中实现替换和插入按钮
- c# - 如何在 TFS 2015 中增加测试代理的屏幕分辨率