我有这个问题,在Hibernate上使用本机查询。这是查询:
Query query = session.createSQLQuery(
"UPDATE InvoiceItems SET current_balance = '"+current_balance+"' WHERE record_id = '"+record_id+"'");
query.executeUpdate();
但是我在运行查询时收到这个错误:
javax.持久化. Transaction必需的异常:执行更新/删除查询
有什么建议吗?我已经尝试过这种方式:Transaction需求异常执行更新/删除查询
你需要一笔交易。
Transaction txn = session.beginTransaction();
Query updateQuery = session.createQuery("UPDATE Post p SET p.title = ?1, p.body = ?2 WHERE p.id = ?3");
updateQuery.setParameter(1, title);
updateQuery.setParameter(2, body);
updateQuery.setParameter(3, id);
updateQuery.executeUpdate();
txn.commit();
从https://www.baeldung.com/jpa-transaction-required-exception