Наиболее простой ответ — это использование запроса 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'; |
MySQL
Данная запись опубликована в 03.08.2022 15:45 и размещена в рубрике SQL.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 18, 2010 г.
Иногда нужно выбрать строки из базы данных в случайном порядке. При сайтостроительстве эта задача возникает довольно часто - вывести случайную тему из форума, показать в блоке случайный продвигаемый товар, показать случайный ответ посетителя за последнюю ...
Читать
Ноябрь 11, 2019 г.
По умолчанию для mysqldump требуются права пользователя на блокировку таблиц.
Потому, когда вы создаёте бекапы, вы можете получить сообщение вроде:
mysqldump: Got error: 1044: "Access denied for user 'USER'@'%' to database 'DATABASENAME'" when ...
Читать
Март 6, 2019 г.
Для mySQL 8й версии эта статья не актуальна, т.к. там появилась целая серия замечательных функций, в том числе ROW_NUMBER(). Но пока на значительном количестве хостингов используется 5я версия.
Приём прост: требуется объявить переменную и инкрементировать ...
Читать
Январь 19, 2023 г.
Допустим, у вас запущен локально сервер, и есть база myBase с и учетка пользователя UserName/MyPass. Вы хотите выполнить запрос "SELECT * FROM TABLE" из командной строки.
Команда передаётся с параметром -e, в общем виде запрос будет выглядеть так: ...
Читать