Я использую informix и пытаюсь выполнить простой запрос из java, используя spring. Это запрос.
INSERT INTO table1
SELECT val1, val2, val3
FROM table2
WHERE condition
Я проверил синтаксис запроса и, если он выполняется с помощью клиента, работает отлично. Но когда он запускается с использованием NamedParameterJdbcTemplate
выдает синтаксическую ошибку, и я не знаю почему. Кто-нибудь может объяснить мне причины и хороший способ решить мою проблему.
Это мой java код.
String LOG_INFO =
"INSERT INTO table1 SELECT val1, val2, (SYSDATE - 5 UNITS HOUR), val3 " +
" FROM table2 " +
" WHERE membership_nbr = :user_nbr_param";
String USER_NBR_PARAM = "user_nbr_param";
@Autowired
private NamedParameterJdbcTemplate jdbcTemplate;
public Integer logInfo(BigInteger userNbr) {
MapSqlParameterSource params = new MapSqlParameterSource();
params.addValue(USER_NBR_PARAM, userNbr);
return jdbcTemplate.update(LOG_INFO, params);
}