SQLite,ROOM 清空表数据并将自增量归零

1.先清空表数据:

delete from [tablename];

2.当数据库中包含自增列时,会自动建立一个名为 sqlite_sequence 的表。这个表包含两个列:name和seq。name记录自增列所在的表(即tablename),seq记录当前序号(下一条记录的编号就是当前序号加1)。你可以通过如下方式将自增量归零:

//1. 将表名为tablename的自增量置0

update sqlite_sequence set seq = 0 where name = 'tablename'

//2. 将表名为tablename的记录删除

delete from sqlite_sequence where name = 'tablename'

//3. 将sqlite_sequence表清空数据

delete from sqlite_sequence

3.ROOM重置

复制代码
@Query("DELETE FROM tablename")
void deleteAll();

@Query("UPDATE sqlite_sequence SET seq = 0 WHERE name = 'tablename'")
void resetPrimaryKey();

@Query("DELETE FROM sqlite_sequence WHERE name = 'tablename'")
void recordDeletion();

@Query("DELETE FROM sqlite_sequence ")
void wipeData();
相关推荐
SeanDe6 分钟前
Canal 详解 + Canal+Redis 缓存一致性完整方案
数据库·redis·缓存
qq_392807958 分钟前
Qt 注册 C++ 给 QML 调用的几种方式
数据库·c++·qt
程序员夏末10 分钟前
【MySQL | 第二篇】 MVCC的底层实现(多版本并发控制)
数据库·sql·mysql
庞轩px11 分钟前
线程池核心参数与拒绝策略深度解析
java·jvm·数据库
油丶酸萝卜别吃11 分钟前
MySQL 事务机制深度解析:从 ACID 到底层实现
数据库·mysql
xcLeigh15 分钟前
Oracle 迁移深度复盘:多数据库选型决策全解析
大数据·数据库·sql·oracle·数据迁移·数据管理
王仲肖20 分钟前
PostgreSQL pageinspect 插件深度解析
数据库·postgresql
云边有个稻草人22 分钟前
【MySQL】第十四节—事务:从基础概念到隔离性理论与实践 | 详解
数据库·mysql·事务·隔离级别·事务的隔离性·事务提交方式
干啥啥不行,秃头第一名22 分钟前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python