Spring JdbcTemplate устанавливает временной интервал час - PullRequest
0 голосов
/ 10 апреля 2020

enter image description here Привет. Не могли бы вы помочь мне с этим?

jdbcTemplate.update ("update_link_valid set set start_time = now (), end_time = (NOW () +") ИНТЕРВАЛ?) Где id = 1 ", новый объект [] {6});

В PgAdmin работает нормально, но выдает ошибку здесь.

Ошибка: вызвана: org. postgresql .util.PSQLException: Невозможно определить тип SQL, чтобы использовать его для экземпляра [L java .lang.Object ;. Используйте setObject () с явным значением Types, чтобы указать используемый тип. at org. postgresql .jdbc2.AbstractJdbc2Statement.setObject (AbstractJdbc2Statement. java: 2142)

1 Ответ

0 голосов
/ 10 апреля 2020

Ваше утверждение в вашем описании не совпадает с утверждением на скриншоте, но в любом случае:

Вы можете set (and play with) the explicit SQLTypes в JDBCTemplate. Поэтому попробуйте это (и, если хотите, отбросьте явное создание массива)

jdbcTemplate.update("update training.link_validity set start_time=now() , end_time=(NOW() + INTERVAL ? HOUR) where id=1", "6" , java.sql.Types.VARCHAR);

(я полагаю, параметр interval? Является строковым литералом, но если это число, просто измените типы соответственно)

...