I have a JDBC inbound channel adapter defined as the following. For some reason, suddenly it's not working anymore and I'm getting the exception below which seems to show that the update statement is convering the "cqtime = :cqtime" to "cqtime = ?, ?, ?"...
This worked fine until I today. All I've done today is modify some code in a completely separate module, unrelated to this JDBC inbound channel adapter. I'm using Spring Integration 2.2.0.RELEASE.
<int-jdbc:inbound-channel-adapter query="select * from dsnlogdata.crcpq where cqsts=''" channel="reportCardRequestChannel" data-source="dataSource" update="update dsnlogdata.crcpq set cqsts='F' where cqtime = :cqtime"> <int:poller fixed-rate="60000"> <int:transactional /> </int:poller> </int-jdbc:inbound-channel-adapter>
19:17:32.742 [task-scheduler-5] ERROR o.s.i.handler.LoggingHandler - org.springframework.jdbc.BadSqlGrammarException: PreparedStatementCallback; bad SQL grammar [update dsnlogdata.crcpq set cqsts='F' where cqtime = ?, ?, ?]; nested exception is java.sql.SQLException: [SQL0104] Token , was not valid. Valid tokens: OR SKIP WITH.