В Hibernate вы можете использовать @SQLInsert
для определения пользовательского запроса на вставку. Hibernate используют подготовленные заявления, поэтому вам просто нужно обеспечить ?
в качестве заполнителя, например: INSERT INTO table (colA, colB) VALUES (?,?)
Hibernate @SQLInsert и On Duplicate Key
На дубликате ключа для colA
, я хочу colB
быть обновлен с новым значением, поэтому я попытался INSERT INTO table (colA, colB) VALUES (?,?) ON DUPLICATE KEY UPDATE colB = ?
- Это, однако, выдает ошибку, указанную третьим параметром. (Не указано значение для параметра 3)
Каков правильный способ написать этот запрос для спящего режима? Любое обновление, не зависящее от данных, например INSERT INTO table (colA, colB) VALUES (?,?) ON DUPLICATE KEY UPDATE colB = colB +1
, работает, но мне нужно установить фактическое значение colB
, которое было передано с помощью вставки.