如何重置字段的AUTO_INCREMENT?

我希望它再次从1开始计数。


当前回答

就像这样:

ALTER TABLE tablename AUTO_INCREMENT = value;

参考:13.1.9 ALTER TABLE语句

其他回答

如果您使用PHPStorm的数据库工具,则必须在数据库控制台中输入:

ALTER TABLE <table_name> AUTO_INCREMENT = 0;
SET @num := 0;
UPDATE your_table SET id = @num := (@num+1);
ALTER TABLE your_table AUTO_INCREMENT =1;

phpMyAdmin在“操作”选项卡下有一个非常简单的方法。在表选项中,您可以将自动增量设置为所需的数字。

ALTER TABLE news_feed DROP id

ALTER TABLE news_feed ADD  id BIGINT( 200 ) NOT NULL AUTO_INCREMENT FIRST ,ADD PRIMARY KEY (id)

我在一些脚本中使用了这个。id字段将被删除,然后添加回以前的设置。数据库表中的所有现有字段都用新的自动递增值填充。这也适用于InnoDB。

请注意,表中的所有字段都将被重新计数,并且将具有其他ID!!!。

警告:如果您的列具有约束或作为外键连接到其他表,这将产生不良影响。

首先,删除列:

ALTER TABLE tbl_name DROP COLUMN column_id

接下来,重新创建列并将其设置为FIRST(如果您希望它作为我假设的第一列):

ALTER TABLE tbl_access ADD COLUMN `access_id` int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT FIRST