【问题标题】:Hibernate doesn´t work as expectedHibernate 没有按预期工作
【发布时间】:2016-11-30 23:31:38
【问题描述】:

我正在尝试使用休眠更新 MySQL 表。看起来它确实有效,休眠的结果是1,但表没有改变。我的更新代码:

Session session = GeneralSession.getSession();
session.beginTransaction();

//some code - initialization and logics
//loop
Query updateDuplicity = session .createSQLQuery("UPDATE `t_inzerat` set `actual` = 'D' 
WHERE `id` = "+ idSimi);
int resultUpdate = updateDuplicity.executeUpdate();

session.flush();
//end of loop

session.getTransaction().commit();

在控制台休眠中这样写:

Hibernate: UPDATE `t_inzerat` set `actual` = 'D' WHERE `id` = 5611
Affected rows : 1

请问有什么问题吗?谢谢

【问题讨论】:

  • 使用语句而不是准备好的语句的任何具体原因?

标签: java sql hibernate session


【解决方案1】:

看看这里example。在 beginTransaction 方法返回的 tx 中进行提交

【讨论】:

  • 这个说法ok???查询 updateDuplicity = session .createSQLQuery("UPDATE t_inzerat set actual = 'D' WHERE id = " + idSimi);
  • 可以尝试直接在sql控制台运行。如果工作正常。我不会使用“`”
猜你喜欢
  • 1970-01-01
  • 2021-10-19
  • 2020-03-18
  • 2012-06-14
  • 2014-11-15
  • 1970-01-01
  • 2012-07-02
  • 2011-09-07
  • 2013-03-03
相关资源
最近更新 更多