2015-01-13 2 views
0

Я хотел бы знать, как создать обновление с именем query для обновления записи в дерби db.Как обновить запись в БД с помощью namedqueries

Вот мой сценарий, у меня есть таблица с именем account в базе данных с именем bank. В таблице счетов есть 2 столбца, идентификатор учетной записи и баланс.

Я хочу ввести запрос обновления, который обновит баланс записи, используя идентификатор учетной записи. Я знаком с sql-запросами, но не с именованными запросами.

Вот что я создал

@NamedQuery(name="Accountcb004415.updateBalance", 
    query="UPDATE Accountcb004415 
    set a.balance = :balance WHERE a.accountid= :accountid") 

Однако приведенный выше запрос не работает. Что здесь не так?

+0

Именованные запросы должны использоваться только для извлечения данных. –

+0

@Amrola: Откуда у вас была эта идея? –

ответ

1

Я думаю, вы пропустили идентификационную переменнуюa в определении запроса. Другими словами, имя сущности должно быть псевдонимом со значением a. Попробуйте это:

UPDATE Accountcb004415 a 
    set a.balance = :balance WHERE a.accountid= :accountid 
Смежные вопросы