当我在 ascii 文本编辑器中打开 SQLite 数据库 .db 文件时,它显示记录存在。但是当我在 sqlite 浏览器中打开或使用客户端驱动程序时,有 0 条记录。表定义仍然存在。如果我运行编译指示完整性检查,结果是好的。
注意:该表是在主数据库下创建的。
你有没有遇到过这样的问题?
当我在 ascii 文本编辑器中打开 SQLite 数据库 .db 文件时,它显示记录存在。但是当我在 sqlite 浏览器中打开或使用客户端驱动程序时,有 0 条记录。表定义仍然存在。如果我运行编译指示完整性检查,结果是好的。
注意:该表是在主数据库下创建的。
你有没有遇到过这样的问题?
当您从 SQLite 数据库中删除一条记录时(在许多其他数据库中也是如此),该记录不会立即从数据库中删除,而只是标记为已删除的行。这就是为什么您仍然可以在十六进制/文本编辑器中看到它,尽管您无法通过 SQL 语句访问它。
要从数据库中删除已删除的行并恢复磁盘空间,您应该使用VACUUM语句。