SQLite中重置自动编号列的方法
程序员文章站
2022-06-17 19:12:10
目前流行的数据库都提供了自动编号类型,sqlite也不例外。当数据库中包含自动编号的字段时,sqlite会自动建立一个名为 sqlite_sequence 的表。这个表包含两个字段:name 和 se...
目前流行的数据库都提供了自动编号类型,sqlite也不例外。当数据库中包含自动编号的字段时,sqlite会自动建立一个名为 sqlite_sequence 的表。这个表包含两个字段:name 和 seq 。name字段记录了自动编号字段所在的表,seq字段记录了当前用到的序号(下一条记录的编号就是当前序号加1)。
在开发过程中,我们经常要把表重置。也就是说把表中的记录全部清空,并把自动编号归0。在sqlite中,只需要修改 sqlite_sequence 表就可以了:
复制代码 代码如下:
update sqlite_sequence set seq = 0 where name = 'tablename'
也可以直接把该记录删掉:
复制代码 代码如下:
delete from sqlite_sequence where name = 'tablename'
要是想重置所有表,那直接把 sqlite_sequence 清空就可以了:
复制代码 代码如下:
delete from sqlite_sequence