SQLite里清空表数据后自增ID如何初始化


发现SQLite里没有 truncate table tablename ,只好用了类似的方法:

delete from tablename

可是清空后发现自增ID还是根据清空前最后的一个ID开始计算的。而且,空间也没有释放啊。

sql query sqlite

小样啊丫的 11 years, 1 month ago

有一张系统表叫sqlite_sequence,有一列是表名,还有一列seq是当前的id,UPDATE成你需要的值就可以了,比如0。

虽然文件大小没变,被删的数据所占的空间可以被重新使用。想要收缩文件,可以用 vacuum 命令。SQLite还有一个auto_vacuum选项,可以自动收缩文件,但会导致文件的碎片化。

咪了个喵的 answered 11 years, 1 month ago

Your Answer