혹시 충돌같은 거 생기지 않을까요? 자동으로 결정될까요?

innodb 테이블에서 auto_increment 컬럼이 primary 키로 지정되어 있을 경우,

insert 문을 하나의 트랜잭션으로 실행한다면 말입니다.....

commit가 끝나기도 전에 그 테이블에서 다른 사용자가 insert를 시도할 경우에

진행중인 트랜잭션의 auto_increment 을 고려해서 key 값이 자동으로 결정될까요?

혹시 충돌이나 그런 건 생기지 않을까요?

여러분의 의견은 어떠세요?

오라클의 myism에서는 중복되지 않는 걸로 알고 있는데요.....


480709dcee634&filename=20080327160733295.jpg








2.jpg



4.jpg





|

댓글 1개

아마 문제 없을 거라고 생각합니다.

사실 DB관리 프로세스가 없는 일반 ISAM 방식의 DB에서는 키중복 에러가 종종 발생합니다.
동시에 INSERT 할때 이것을 콘트롤할 수 있는 프로세스가 없기 때문입니다.
그래서 이런 파일db 에서는 가끔식 auto_increment 로 유니크한 값을 잡지 않고 날짜시간분&천분의일초..(200906181555001...) 같은 값으로 처리하는 경우도 있습니다..

그러나 오라클, mySQL 처럼 서버용 DB에서는 바로 이 DB가 이런것을 컨트롤해 줍니다.
즉 동시에 들어오면 너가 먼저 앞번호 가지고, 너는 두번째 번호를 가져라... 이런 식이지요...

확실한 것은 아니지만 경험상 그럴거라고 생각한 것입니다...^^
댓글을 작성하시려면 로그인이 필요합니다. 로그인

자유게시판

+
제목 글쓴이 날짜 조회
16년 전 조회 1,216
16년 전 조회 1,787
16년 전 조회 1,779
16년 전 조회 1,198
16년 전 조회 1,800
16년 전 조회 1,443
16년 전 조회 1,147
16년 전 조회 1,800
16년 전 조회 1,276
16년 전 조회 1,126
16년 전 조회 1,112
16년 전 조회 1,149
16년 전 조회 1,215
16년 전 조회 1,146
16년 전 조회 1,164
16년 전 조회 1,097
16년 전 조회 1,083
16년 전 조회 1,119
16년 전 조회 1,213
16년 전 조회 1,126
16년 전 조회 1,191
16년 전 조회 1,089
16년 전 조회 1,213
16년 전 조회 1,100
16년 전 조회 1,284
16년 전 조회 1,095
16년 전 조회 1,184
16년 전 조회 1,098
16년 전 조회 1,233
16년 전 조회 1,166
🐛 버그신고