@phpcoder81

Почему появляются дырки в ID (AI, InnoDB)?

Есть поле ID, primart key autoincrement.
Вставляю строку нумерация идет последовательно 999, 1000.
Удаляю строку последнюю 1000 и вставляю новую и уже идет разрыв в 100 строк.
То есть следующая, не 1001 как по логике вещей, а 1100 и тд.
Из-за чего такое может быть?
  • Вопрос задан
  • 40 просмотров
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Лакуны в автоинкрементном поле обычно связаны с запросами на вставку, которые не были выполнены (запросы с ошибками выполнения, INSERT IGNORE, INSERT ... ON DUPLICATE KEY UPDATE). Перед запросом резервируется необходимое количество новых идентификаторов и счётчик в таблице увеличивается, если запрос не добавил строки, то выделенные ему номера пропадают.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы