MySQL + Hibernate Update查询未执行

时间:2014-01-29 15:02:22

标签: mysql spring hibernate

我有一个mysql 5 DB和一个hibernate 4 appication

我使用此方法更新某个实体

public void executeNamedQuery(String namedQuery,Map params) {
    if(params != null){
        try{
            getSession().getNamedQuery(namedQuery).setProperties(params).executeUpdate();
            getSession().flush();
        } catch (Exception e){
            e.printStackTrace();
        }
    }
    else{
        getSession().getNamedQuery(namedQuery).executeUpdate();
    }
}

这就是调试器编写的内容

Hibernate: update announcement set status=?, dcp_id=? where announcement_id=?

当我打开mysql日志表时,我在

中的查询中找到了这个查询
update announcement set status=-6, dcp_id=149714 where announcement_id=81

但是行没有更新,当我在工作台中执行它时,它可以正常工作。

这可能导致什么问题?

1 个答案:

答案 0 :(得分:0)

我不知道executeNamedQuery周围有什么,但似乎您的更改未提交给数据库。在这种情况下,upate将在事务超时后回滚。