温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JdbcPagingItemReader:Missing IN or OUT parameter

发布时间:2020-07-07 05:02:15 来源:网络 阅读:448 作者:study_IT 栏目:编程语言

SPRING BATCH用JdbcPagingItemReader 与OraclePagingQueryProvider读取数据库的数据,当SELECT脚本无数据返回时报错:
2019-08-23 18:05:53.803 ERROR 6542 --- [ scheduling-1] o.s.batch.core.step.AbstractStep : Encountered an error executing step orderStep1 in job processJob

org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [SELECT * FROM (SELECT the_date,。。。 FROM 。。。 WHERE 。。。 ORDER BY the_date ASC) WHERE ROWNUM <= 20 AND ((the_date > ?
))]; SQL state [99999]; error code [17041]; Missing IN or OUT parameter at index:: 1; nested exception is java.sql.SQLException: Missing IN or OUT parameter at index:
: 1
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:89) ~[spring-jdbc-5.1.2.RELEA
SE.jar:5.1.2.RELEASE]

原因:不管select结果有没有数据,脚本都会自动拼接上排序字段(框架有要求sortKeys必须有),不知道算不算框架的bug。

解决方法:
插一条为负一的记录,保证都有值 或者调成单线程也没问题

调成单线程,即下图中全部调成1
JdbcPagingItemReader:Missing IN or OUT parameter

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI