OK, the answer was that getParameterMetaData()
is causing this issue. I was using ojdbc7 v12.1.0 and it does not seem to recognise the systimestamp
keyword.
QueryRunner queryRunner = new QueryRunner();
int result = queryRunner.update(this.conn, "UPDATE system_user SET last_login_timestamp = systimestamp WHERE sys_user_code = ? ", "myuser");
If I provide systimestamp
as a parameter then this error does not occur anymore.
QueryRunner queryRunner = new QueryRunner();
int result = queryRunner.update(this.conn, "UPDATE system_user SET last_login_timestamp = ? WHERE sys_user_code = ? ", "2015-03-03 11:45:57.676", "myuser");
Maybe it is possible to avoid this error by using another version of ojdbc7.