How to vacuum sqlite database?

2019-03-17 11:26发布

I want to know how to vacuum sqlite database. I tried a syntax MANUAL VACUUM command for the whole database from command prompt:

 $sqlite3 database_name "VACUUM;";

But it's giving error as:

near "database_name": syntax error.

and also AUTO VACUUM:

PRAGMA auto_vacuum = INCREMENTAL;

And tried it for a particular table as:

VACUUM table_name;

But no result.

标签: sqlite vacuum
3条回答
放荡不羁爱自由
2楼-- · 2019-03-17 11:36

Run the command:

VACUUM;

if you use DB Browser for Sqlite or

open Sqlite from command prompt:

cd C:\your_folder
C:\Users\your_user\AppData\Local\Android\Sdk\platform-tools\sqlite3.exe  -line your_db_name.db

and run

VACUUM;
查看更多
家丑人穷心不美
3楼-- · 2019-03-17 11:42

You don't to specify the table name in the syntax. Only VACUUM works.

Also, it will clean the main database only and not any attached database files.

For more info, refer to the SQLite documentation.

查看更多
再贱就再见
4楼-- · 2019-03-17 12:01

Give the command like this:

$sqlite3 database_name 'VACUUM;'

As a matter of fact, this is the way to do also other queries from command line:

$sqlite3 database_name 'select * from tablename;'
查看更多
登录 后发表回答