首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在SQLite3/MySQL中重置行数计数

在SQLite3/MySQL中重置行数计数
EN

Stack Overflow用户
提问于 2010-08-10 03:50:06
回答 3查看 27.9K关注 0票数 18

我正在使用SQLite3。我加载一个表,假设有30行,使用integer作为主ID,它会自动递增。

现在,我从表中删除所有行,然后将一些新信息重新加载到表中。

问题是:行数(我的PrimaryID)现在从31开始。有没有什么方法可以从数字1开始加载新行?

EN

回答 3

Stack Overflow用户

发布于 2012-10-06 03:21:30

供SQLite使用(无需删除和创建表)

代码语言:javascript
复制
UPDATE SQLITE_SEQUENCE SET SEQ=0 WHERE NAME='table_name';

供MySql使用

代码语言:javascript
复制
ALTER TABLE table_name AUTO_INCREMENT = 1;
票数 7
EN

Stack Overflow用户

发布于 2011-07-01 19:06:56

在这种情况下,您不应该使用AUTOINCREMENT。只需将主键定义为INTEGER PRIMARY KEY,在DELETE FROM查询后计数将重置为1。如果没有AUTOINCREMENT,默认行为仍然是自动递增主键,只要表中的空间不会用完(在这种情况下,旧的已删除值将被重用)。

SQLite Autoincrement文档中提供了更多信息。

票数 6
EN

Stack Overflow用户

发布于 2010-08-10 03:54:06

代码语言:javascript
复制
ALTER TABLE tbl AUTO_INCREMENT = 0;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3443630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档