2016-03-08 3 views
0

Я пытался сделать инструкцию UPDATE, которая обновляет несколько столбцов и возвращает обновленную строку как Entity.Hibernate UPDATE через createSQLQuery, используемый с RETURNING

Вот код:

User user = (User) session 
    .createSQLQuery(
     "UPDATE \"user\" " + 
     "SET chips_balance=chips_balance + 100" + 
     "WHERE id=118 " + 
     "RETURNING *") 
    .addEntity(User.class) 
    .uniqueResult(); 

Она партия работает, значит, это действительно возвращает обновленный «User» объект, но не обновляет фактические данные в таблице БД!

Есть ли что-то, что нужно сделать, чтобы заставить его работать хорошо?

Спасибо!

+0

Я выполнил этот запрос непосредственно в pgadmin (PostgreSQL), и он работает! что-то в моем режиме Hibernate неверно! – Shvalb

ответ

0

Я не знал, что в этом случае вам необходимо создать транзакцию и зафиксировать ее.

Смежные вопросы