자동 증가 기본 키 ID에 공백이 있는 이유는 무엇입니까?
Nov 27, 2024 am 12:51 AM자동 증가 기본 키: 계산 공백 설명
자동 증가 기본 키가 있음에도 불구하고 할당된 기본 키에 공백이 있음을 발견했습니다. ID로 인해 행 개수와 최대 ID 간에 불일치가 발생합니다. 이 동작은 자동 증가 메커니즘의 고유한 측면이며 걱정할 필요가 없습니다.
이유를 이해하려면 두 개의 겹치는 트랜잭션과 관련된 다음 시나리오를 고려하십시오.
- 트랜잭션 1 삽입 레코드를 생성하고 ID 42를 얻습니다.
- 트랜잭션 2는 삽입을 시작하고 ID를 받습니다. 43.
이제 트랜잭션 1이 실패하고 롤백된다고 가정해 보겠습니다. 이 경우 할당된 ID 42는 사용되지 않은 상태로 유지됩니다. 결과적으로 다음 할당된 ID는 43이 되어 44의 공백을 남깁니다.
이러한 동작은 동시 트랜잭션이 서로 차단되지 않고 진행될 수 있도록 하는 보호 장치입니다. 지속적인 ID를 적용하려면 트랜잭션의 순차적 실행이 필요하며 이는 확장성에 심각한 영향을 미칠 수 있습니다.
당연히, 레코드를 삭제하지 않더라도 자동 증가 ID에 공백이 있을 것으로 예상되며 문제를 나타내지는 않습니다.
위 내용은 자동 증가 기본 키 ID에 공백이 있는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

인기 기사

인기 기사

뜨거운 기사 태그

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Alter Table 문을 사용하여 MySQL에서 테이블을 어떻게 변경합니까?

MySQL의 문제를 해결하는 방법 공유 라이브러리를 열 수 없습니다.

Linux에서 MySQL을 실행합니다 (Phpmyadmin이있는 Podman 컨테이너가 포함되지 않음)

일반적인 취약점 (SQL 주입, 무차별 적 공격)에 대해 MySQL을 어떻게 보호합니까?
