我需要从数据库中获取一些数据,并根据结果需要执行另一个查询。
但我得到以下例外:org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
我的代码:
Session tempSession1 = HibernateUtil.getSessionFactory().openSession();
Session tempSession2 = HibernateUtil.getSessionFactory().openSession();
Criteria criteriaApplication = tempSession1.createCriteria(Entity.class);
try {
List list = criteriaApplication.add(Restrictions.eq("app__id",Entity.sys_id()).ignoreCase()).list();
tempSession1.flush();
tempSession1.close();
if (list.size() > 0) {
tempSession2.update(Entity);
tempSession2.flush();
tempSession2.close();
}
请帮忙。有人可以修改我的代码吗?
最佳答案
您在以下情况下收到此异常
*根据您的锁定设置,您会话中要更新的实体不够最新
*您要更新的会话中的实体不再存在于数据库中