자동 키 생성은 복잡한 주제이지만 키 생성에 대해 예약된 특별 테이블인 경우 데이터베이스는 새 키를 선택할 수 있습니다. 이 테이블에는 한 열(증가 열)에 사용되지 않은 키 목록을 두고 다른 열(ID 열)에 1부터 시작하는 번호 목록을 두어야 합니다. 데이터베이스에서 새 키가 필요할 때 이는 ID 열에 1을 가진 행에서 키를 가지고 있으며 다음을 위해 새 키를 준비합니다.
데이터베이스에 새 고유 키가 필요할 때 ID 열 값이 1인 행을 찾습니다. 이 행의 증가 열 값은 다음에 사용 가능한 키를 보유하고 있습니다. 데이터베이스는 이 키를 사용하고 다음에는 새 키가 사용 가능하도록 테이블을 갱신합니다.
| ID 열 | 증가 열 |
|---|---|
| 3 | 78 |
| 4 | 3 |
| 1 | 65 |
| 2 | 12 |
다음에 사용 가능한 키를 테이블에서 페치한 후에는 다음에 키가 필요할 경우를 위해 테이블이 갱신됩니다. 데이터베이스는 두 개 이상의 행에 대해 증가 열 값을 확인하는 방법으로 한 번에 여러 개의 키를 검색할 수도 있습니다.
즉, 자동 키 생성을 수행하기 위해서는 두 개의 열(ID 열로 사용되는 1 차 키 열과 다음에 사용 가능한 키를 저장하는 열)로 구성된 키 생성 테이블만 있으면 됩니다. 이 테이블은 ID 열 값이 1이고 증가 열 값이 첫번째로 사용 가능한 키가 되는 한 개의 레코드로 초기화되어야 합니다. 이러한 설정을 통해 자동 키 생성을 사용할 수 있습니다.