0
방금 jdbc를 배우고 다양한 테스트를 시작했습니다.jdbc 4 연결 롤백 자동 증가 문제
나는 다음과 같은 상황에 걸쳐 온
- 세트 세이브 포인트
- (준비된 문장을 만들고
- 이 실행 존재하지 않는 외래 키 값을 테이블에 (삽입 데이터를 실행하려고) 메서드가 실패하고 롤백을 수행합니다.
- 유효한 쿼리를 실행하면 행이 db에 삽입되지만 기본 키는 n + 1 대신 n + 2로 설정됩니다. 여기서 n은 마지막으로 삽입 된 값입니다. 쿼리가 실패하더라도 인덱스 자동 증가를 추측하십시오.
이것을 피하고 n + 1을 설정하는 메커니즘이 있습니까?
참고. MySQL을 사용하고 있습니다.
감사합니다.
글을 읽는 방법에 대해 http://stackoverflow.com/questions/449346/mysql-auto-increment-does-not-rollback topic? –
나는 그 글에 동의하지만, 내 애플 리케이션 로직에서 그걸 고려하고 싶지 않다. 나는 왜 그 현상이 일어나고 있는지 그리고 이것을 극복 할 수있는 방법이 있는지 궁금해하고 있었다. – Radu
id 생성이 트랜잭션과 독립적이기 때문에 발생합니다. 많은 노력 없이는 그것을 극복 할 수있는 방법이 없습니다. id에 어떤 의미도 부여하지 마십시오. – Hiro2k