최대 절전 모드에서 Criteria를 작성하려고합니다. empfield1 열의 값이 'REGULARIZE'가 아니고 update else가 레코드를 갱신하지 않으면 원하는 결과가 나타납니다.Hibernate saveorupdate()를 사용하여 somcolumn! = "somevalue"레코드를 갱신하십시오.
나는 아래에서 시도했다.
Session session = factory1.openSession();
Criteria criteria=session.createCriteria(EmployeePunch.class);
criteria.add(Restrictions.ne("empField1","REGULARIZE"));
EmployeePunch empPunch = (EmployeePunch)criteria.uniqueResult();
empPunch.setId(empPuncId);
empPunch.setSigninTime(inTime);
empPunch.setSigninDate(dateOfUpdate);
empPunch.setSignoutTime(outTime);
empPunch.setPresent(presentStatus);
empPunch.setLastUpdateBy(empcode);
empPunch.setLastUpdateDate(time);
empPunch.setEmpField1(remark);
session.saveOrUpdate(empPunch);
tx.commit();
하지만 나에게 그 criteria
여러 기록이 Database
에있다가 함께 의미 오류
Exception : query did not return a unique result: 527
분명히 예외입니다. 그것의 어느 부분을 이해하지 못합니까? – greyfairer
왜 setId (empPuncId)를 사용합니까? 기존 레코드의 기본 키입니까? 아니면 empPuncId는 어디에서 왔습니까? – greyfairer
실제로 나는 동면하는 초보자입니다. 처음에는 예외의 의미를 이해하지 못했지만 이제는 이해합니다. – Abhijit