我正在使用SQLite3。我加载一个表,假设有30行,使用integer作为主ID,它会自动递增。
现在,我从表中删除所有行,然后将一些新信息重新加载到表中。
问题是:行数(我的PrimaryID)现在从31开始。有没有什么方法可以从数字1开始加载新行?
发布于 2012-10-06 03:21:30
供SQLite使用(无需删除和创建表)
UPDATE SQLITE_SEQUENCE SET SEQ=0 WHERE NAME='table_name';
供MySql使用
ALTER TABLE table_name AUTO_INCREMENT = 1;
发布于 2011-07-01 19:06:56
在这种情况下,您不应该使用AUTOINCREMENT
。只需将主键定义为INTEGER PRIMARY KEY
,在DELETE FROM
查询后计数将重置为1。如果没有AUTOINCREMENT,默认行为仍然是自动递增主键,只要表中的空间不会用完(在这种情况下,旧的已删除值将被重用)。
SQLite Autoincrement文档中提供了更多信息。
发布于 2010-08-10 03:54:06
ALTER TABLE tbl AUTO_INCREMENT = 0;
https://stackoverflow.com/questions/3443630
复制相似问题