Как сбросить первичный ключ таблицы?
-
05-07-2019 - |
Вопрос
В моей таблице tbphotos
у меня было 100 записей. Затем я удалил все записи, и теперь, когда я хочу возобновить ввод данных, я вижу, что мой первичный ключ начинается не с 1, а с 101,
Есть ли способ сбросить первичный ключ?
Я использую учетную запись администратора MySQL.
Решение
изменить таблицу foo AUTO_INCREMENT = 1
Другие советы
Вы можете сбросить автоинкремент следующим образом:
ALTER TABLE tablename AUTO_INCREMENT = 1
Но если вы полагаетесь на значения автоинкремента, ваша программа очень хрупкая. Если вам нужно присвоить свои записи последовательным номерам, чтобы ваша программа работала, вы должны создать для этого отдельный столбец и не использовать для этого идентификатор автоинкремента базы данных.
Если вы используете TRUNC вместо удаления записей вручную, ваш первичный ключ будет сброшен.
Приведенный ниже код лучше всего подходит, если у вас уже есть данные в базе данных, но вы хотите сбросить идентификатор с 1 без удаления данных. Скопируйте и запустите команду SQL
ALTER TABLE members DROP ID;
ALTER TABLE members AUTO_INCREMENT = 1;
ALTER TABLE members ADD ID int UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
Это лучший скрипт для автоматического приращения сброса:
ALTER TABLE для изменения вашего столбца int (11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT = 1;