Наиболее простой ответ — это использование запроса alter, где вы задаёте новое значение для AUTO_INCREMENT нужной вам таблицы:
|
|
ALTER TABLE tablename AUTO_INCREMENT = value; |
Вы можете достичь такого же эффекта изменениями соответствующего столбца вашей таблицы:
|
|
ALTER TABLE tablename MODIFY COLUMN ID INT(10) UNSIGNED; ALTER TABLE tablename MODIFY COLUMN ID INT(10) UNSIGNED AUTO_INCREMENT; |
Понятно, что MySQL не позволит вам установить значение AUTO_INCREMENT меньше, чем существующие уже в таблице значения + 1.
Если требуется сбросить AUTO_INCREMENT до 1, то придется удалить и все существующие записи. Это можно сделать одной командой:
|
|
TRUNCATE TABLE tablename; |
Чтобы узнать текущее значение AUTO_INCREMENT, выполнитe запрос к INFORMATION_SCHEMA
|
|
SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'databasename' AND TABLE_NAME = 'tablename'; |
Данная запись опубликована в 03.08.2022 15:45 и размещена в рубрике mySQL.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Ноябрь 5, 2016 г.
Что делать, если нужно пронумеровать строки прямо в запросе? Полистав руководство MySql 5.5, нужной функции я не нашел.
Мне нужно было сохранять позиции пользователей в рейтинге, т.е. пронумеровать пользователей в зависимости от значения их рейтинга. ...
Читать
Октябрь 18, 2010 г.
Иногда нужно выбрать строки из базы данных в случайном порядке. При сайтостроительстве эта задача возникает довольно часто - вывести случайную тему из форума, показать в блоке случайный продвигаемый товар, показать случайный ответ посетителя за последнюю ...
Читать
Сентябрь 24, 2025 г.
Под дублями можно иметь в виду разные условия. Возьмем как пример таблицу имен. В этой таблице есть повторяющиеся значения в поле name. Разберём практический способ удалить такие записи в MySQL с помощью одного SQL-запроса.
Пример исходной таблицы ...
Читать
Январь 19, 2023 г.
Допустим, у вас запущен локально сервер, и есть база myBase с и учетка пользователя UserName/MyPass. Вы хотите выполнить запрос "SELECT * FROM TABLE" из командной строки.
Команда передаётся с параметром -e, в общем виде запрос будет выглядеть так: ...
Читать