如何使用namedqueries更新数据库中的记录

时间:2015-01-13 16:51:37

标签: jpa derby named-query

我想知道如何创建一个名为query的更新来更新derby db中的记录。

这是我的方案,我在名为bank的数据库中有一个名为account的表。 在帐户表格中有2列,帐户ID和余额。

我想输入一个更新查询,它将使用帐户ID更新记录的余额。 我熟悉sql查询,但不熟悉命名查询。

这是我创造的

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

但是上述查询不起作用。 这里看来有什么不对?

1 个答案:

答案 0 :(得分:1)

我猜您在查询定义中遗漏了标识变量 a。换句话说,实体名称需要使用值a进行别名。试试这个:

UPDATE Accountcb004415 a
  set a.balance = :balance WHERE a.accountid= :accountid