我正在尝试在项目中设置hibernate,作为其中的一部分,我正在尝试进行简单的更新查询,以确保其能够正常工作。这是我的代码:
Session sess = factory.openSession();
sess.beginTransaction();
sess.createSQLQuery("UPDATE fooTable SET bar='baz' ");
sess.getTransaction().commit();
sess.close();
当我运行代码时,一切都在没有任何错误消息的情况下执行,我看到有关获取JDBC驱动程序的调试消息(使用我提供的配置信息),但更新查询似乎没有执行,如该表仍显示旧信息。
我做错了什么?
答案 0 :(得分:4)
您创建了查询,但没有执行它。
...
Query qry = sess.createSQLQuery("UPDATE fooTable SET bar='baz' ");
int updatedRows = qry.executeUpdate();
...