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();
相关推荐
2401_8762213427 分钟前
数据库系统概论(第6版)模拟题2
数据库
爱学习的小可爱卢43 分钟前
数据库MySQL——MySQL 可重复读隔离级别:Read View 底层原理与幻读问题深度剖析(面试必知)
数据库·mysql
lifewange1 小时前
数据库索引里面的游标是什么?
数据库·oracle
PhDTool2 小时前
计算机化系统验证(CSV)的前世今生
数据库·安全·全文检索
banpu2 小时前
Spring相关
数据库·spring·sqlserver
老年DBA2 小时前
Ora2Pg 迁移Oracle至 PostgreSQL 之实战指南
数据库·postgresql·oracle
我是苏苏2 小时前
MSSQL04: SQLserver的用户权限管理
数据库
l1t2 小时前
达梦数据库和Oracle兼容性和性能比较
数据库·sql·oracle·达梦
lkbhua莱克瓦242 小时前
基础-事务
开发语言·数据库·笔记·mysql·事务
weixin_436525072 小时前
NestJS-TypeORM QueryBuilder 常用 SQL 写法
java·数据库·sql