#|MySQL、Sqlite重置自增ID

1.MySQL重置自增id 方法一:使用truncate命令(截断表)

truncate table tableName;

注意:truncate命令一次性将表中所有数据删除,且无法恢复。并且在删除过程中不会激活与表有关的删除触发器。执行速度快。使用truncate命令后,表和索引所占用的空间会恢复到初始大小。
方法二:
delete from tableName; alter tableName auto_increment=1;

2. sqlite重置自增id
当数据库中包含自动编号的字段时,SQLite会自动建立一个名为sqlite_sequence的表。这个表 包含两个字段:name和seq。其中,name记录了自动编号字段所在的表的名称,seq字段记录了该表当前最大的序号(下一条记录的编号将为当前序号加1)。重置表的自增id,只需要修改sqlite_sequence表即可。
方法一:
将表的记录全部清空,并把自动编号归0。
DELETE FROM tableName; UPDATE sqlite_sequence SET seq = 0 WHERE name = 'tableName';

测试:
  • 新建sqlite表,名为tb_user。id自增,表中有5条记录。
    #|MySQL、Sqlite重置自增ID
    文章图片
  • 查询sqlite_sequence表:
select * from sqlite_sequence;

#|MySQL、Sqlite重置自增ID
文章图片

-- 清空tb_user表中数据 DELETE FROM tb_user; -- 重置tb_user表的自增序列 UPDATE sqlite_sequence SET seq = 0 WHERE name = 'tb_user';

#|MySQL、Sqlite重置自增ID
文章图片

  • 插入一条记录
insert into tb_user(name,age) values('zhangsan',18);

#|MySQL、Sqlite重置自增ID
文章图片

#|MySQL、Sqlite重置自增ID
文章图片

方法二:
删除对应记录。
DELETE FROM tableName; DELETE FROM sqlite_sequence WHERE name = 'tableName';

【#|MySQL、Sqlite重置自增ID】参考文章链接:
  • https://blog.csdn.net/chineseyoung/article/details/79277767
  • https://www.jb51.net/article/61575.htm
  • https://blog.csdn.net/vk5176891/article/details/8750164
  • https://blog.csdn.net/tojohnonly/article/details/52117326
  • https://blog.csdn.net/sdhongjun/article/details/86529613
  • https://blog.csdn.net/WxQ92222/article/details/79956403

    推荐阅读