我有一个名为users_items
的表。在此表中有3列。其中1个被称为id
。此表中有100.000 - 150.000个数据。 id
设置为AUTO_INCREMENT
。
我想将所有ID重置为0,然后将数字替换为1,2,3,4,5,6继续这样。
答案 0 :(得分:0)
从一个开始,只需执行以下操作:
ALTER TABLE tablename AUTO_INCREMENT = 1
如果需要参考,请使用以下链接:
改变表格: http://dev.mysql.com/doc/refman/5.1/en/alter-table.html
自动增量/重置主键: Reorder / reset auto increment primary key
Mysql重置autoincreament: http://www.mysqltutorial.org/mysql-reset-auto-increment
答案 1 :(得分:0)
您将无法同时将所有这些设为0,因为您无法为PK提供重复项。
使用phpMyAdmin或您想要的任何工具或使用SQL查询创建表的副本。
然后使用以下方法删除原始表中的所有数据:
DELETE users_items
或者:
TRUNCATE users_items
然后使用以下方法重置自动增量:
ALTER TABLE users_items AUTO_INCREMENT = 1
如果您使用TRUNCATE
,则无需重置自动增量计数器。
在此之后,您可以使用SELECT
和INSERT
将复制的表格中的数据恢复为此数据:
INSERT INTO users_items (col2, col3...) SELECT col2, col3,... FROM users_items_copy
(注意:选择和插入行时未触摸id列。)