Вопрос

В моей таблице 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;

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top