티스토리 뷰

* 개요

org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1



* 상황 1 - getHibernateTemplate().delete(..) 실행중 발생


- 원인

DB 에 존재하지 않는 Entity 를 삭제 시도시 발생


- 참고

https://stackoverflow.com/questions/2743130/hibernate-batch-update-returned-unexpected-row-count-from-update-0-actual-row



- 해결

먼저 get(..) 으로 특정 PK 로 찾아본 후 

null 아닐때만 삭제하도록 로직 변경





* 상황 2 - saveOrUpdate() 중 발생


- 원인

존재하지 않는 Entity 에 위 메서드 실행하면 PK와 함께 생성되어야 함.


@GeneratedValue 가 설정되어 있다면, MySQL 의 경우 AUTO INCREMENT 가 지정되어 있어야 DB에서 PK를 자동으로 생성하는데

설정되어 있지 않으면 오류 발생함.


- 해결

AUTO INCREMENT 설정하거나

@GeneratedValue 를 제거하고 직접 PK 를 입력한 후 저장




공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함