Я использую H2 как базу данных в памяти для модульного тестирования нашего приложения.Этот запрос выдает ошибку expected "ALL, ANY, SOME, SELECT, FROM, WITH"
для этого SQL-запроса
SELECT CF.*, ROWNUM CASHFLOW_INDEX
FROM ( SELECT * FROM
TB_CASHFLOWS CFW WHERE CFW.CASHFLOW_DATE >= :runDate AND
CFW.CASHFLOW_TYPE <> 'ISSUE' AND CFW.ISIN = :securityCode ORDER BY
CFW.CASHFLOW_DATE,CFW.CASHFLOW_TYPE ASC ) CF
в расположении runDate, как показано ниже:
SELECT CF.*, ROWNUM CASHFLOW_INDEX
FROM ( SELECT * FROM
TB_CASHFLOWS CFW WHERE CFW.CASHFLOW_DATE >= :[*]RUNDATE AND
CFW.CASHFLOW_TYPE <> 'ISSUE' AND CFW.ISIN = :SECURITYCODE ORDER BY
CFW.CASHFLOW_DATE,CFW.CASHFLOW_TYPE ASC ) CF
Но тот же запрос работает нормально в консоли h2, когдапараметры задаются как '2017-02-28
' и 'USD_TREASURY_28FEB
'.Этот запрос будет выполнен шаблоном Spring JDBC.Это проблема с тем, как параметры передаются для H2?
Java-код, как показано ниже:
Object[] cashflowQueryArgs = new Object[] {"2017-02-28","USD_TREASURY_28FEB" };
List<Cashflow> instrumentCashflows = getJdbcTemplate().query(
cashflowsQuery,
cashflowQueryArgs,
new BeanPropertyRowMapper<Cashflow>(Cashflow.class));