Ответ 1
alter table tablename AUTO_INCREMENT=664441
должен делать
В моей таблице у меня есть идентификатор автоинкремента, который имеет его число от 1 до 66,440, а следующее число - 88846790 + приращение отсюда до 88846900.
Нет записей между 66440 и 88846790
Я хочу, чтобы мой следующий номер автоматического увеличения равнялся 66441, но с его принятием 88846791, можете ли вы помочь мне установить следующий автоматический приращение до 66441,
alter table tablename AUTO_INCREMENT=664441
должен делать
Вы можете использовать ALTER TABLE
для изменения значения auto_increment:
ALTER TABLE my_table AUTO_INCREMENT = 66441;
Подробнее см. ссылку на MySQL.
Не забудьте повторно вставить все строки с идентификатором выше 88846790
Если вы не удаляете строки с более высоким идентификатором, чем 66441,
изменение автоинкремента ничего не делает.
Пример:
ID Value
---- --------
1 C
2 A
4 D
50 A
51 C
Если я хочу изменить автоинкремент на 5
, мне нужно сначала удалить или повторно вставить 50
и 51
. Потому что в противном случае следующий автоматический приращение будет 52
в любом случае.
В зависимости от того, насколько и насколько важны данные, часто лучше всего: Ничего
Поскольку эти первичные идентификаторы имеют отношения к другим строкам и, возможно, даже к веб-адресам, основанным на этих идентификаторах. Все это закончится неудачно, если вы не создадите какой-то script.
Вы можете использовать команду ALTER TABLE, как показано ниже,
ALTER TABLE tablename AUTO_INCREMENT = 66441
Вы можете обновить поле автоматического увеличения, используя ALTER TABLE
ALTER TABLE tablename AUTO_INCREMENT = 66441
ALTER TABLE tbl AUTO_INCREMENT = 66441;
Если у вас нет идентификаторов записей больше 66441, тогда он должен работать.
Мне не удалось заставить это работать в phpMyAdmin, даже напрямую введя запрос. Если вы просмотрите таблицу, где хотите reset индекс, а затем нажмите Operations
, вы должны установить AUTO_INCREMENT
непосредственно под Table options
. Затем просто нажмите "Перейти", и все будет готово!
Мне нравится использовать:
ALTER TABLE tablename AUTO_INCREMENT=1
С тех пор двигатель все равно сделает его самым низким доступным значением.