我正在使用JpaPagingItemReader创建批处理作业 我的查询在作业配置中看起来像这样:
<property name="queryString" value="SELECT a FROM EntityName a
WHERE a.status = 'RUNNING'
AND a.validTo = '2017-12-13'"/>
当我执行作业时,我收到以下异常:
java.sql.SQLDataException: ORA-01843: not a valid month
如何将正确的格式传递给查询以从数据库中获取?数据库中的列是正常sql中的时间戳我会像这样做
SELECT * FROM EntityName
WHERE VALID_TO = to_timestamp('2017-12-12', 'yyyy-mm-dd')
答案 0 :(得分:0)
JPQL遵循日期文字的SQL和JDBC语法:
Date - {d 'yyyy-mm-dd'} - for example: {d '2010-12-31'}
Time - {t 'hh:mm:ss'} - for example: {t '23:59:59'}
Timestamp - {ts 'yyyy-mm-dd hh:mm:ss'} - for example: {ts '2011-01-03 14:59:59'}