如何真空sqlite数据库?

meg*_*lee 26 sqlite vacuum

我想知道如何真空sqlite数据库.我从命令提示符处为整个数据库尝试了语法MANUAL VACUUM命令:

 $sqlite3 database_name "VACUUM;";
Run Code Online (Sandbox Code Playgroud)

但它给出的错误是:

near "database_name": syntax error.
Run Code Online (Sandbox Code Playgroud)

还有AUTO VACUUM:

PRAGMA auto_vacuum = INCREMENTAL;
Run Code Online (Sandbox Code Playgroud)

并尝试将其用于特定的表格:

VACUUM table_name;
Run Code Online (Sandbox Code Playgroud)

但没有结果.

SHA*_*ANK 25

您不必在语法中指定表名.只有VACUUM作品.

此外,它将仅清理主数据库而不清除任何附加的数据库文件.

有关更多信息,请参阅SQLite 文档.


liv*_*ove 9

运行命令:

VACUUM;
Run Code Online (Sandbox Code Playgroud)

如果您使用 Sqlite 的数据库浏览器或

从命令提示符打开 Sqlite:

cd C:\your_folder
C:\Users\your_user\AppData\Local\Android\Sdk\platform-tools\sqlite3.exe  -line your_db_name.db
Run Code Online (Sandbox Code Playgroud)

并运行

VACUUM;
Run Code Online (Sandbox Code Playgroud)


小智 8

给出这样的命令:

$sqlite3 database_name 'VACUUM;'
Run Code Online (Sandbox Code Playgroud)

事实上,这是从命令行执行其他查询的方法:

$sqlite3 database_name 'select * from tablename;'
Run Code Online (Sandbox Code Playgroud)