一个诡异的hibernate更新问题!请大侠指教。

06-01-03 feilingshuzi

Session sess = HibernateUtil.currentSession();

Query query = sess.createQuery("select table from tableData table");

/*

tableData中包括

String Name;

Long age;

且tableData对应的表在数据库中只有一条记录

*/

tableData poData = (tableData) query.uniqueResult();

Transaction tx = null;

tx = sess.beginTransaction();

poData.setName("TOM");

sess.save(poData);

tx.commit();

sess.evict(poData);

请问,为什么我用这样的代码不能进行Name的更新?这个问题太诡异了,请大侠帮我分析一下,谢谢!!

ministor
2006-01-18 23:21

我也遇到过此类问题,至今未解决,可能是那个long类型的字段的问题。如果你都用String的就应该没问题了。如有高手来解答就好了。期待

wildfox
2006-01-24 16:35

你是不是应该用update 或者 saveOrUpdate

fengliangjun
2006-02-05 13:07

Transaction tx = null;

tx = sess.beginTransaction();

sess.update(poData);

poData.setName("TOM");

sess.save(poData);

tx.commit();