2013-08-08 15 views
16

Voglio sapere come aspirare il database SQLite. Ho provato un comando manuale del vuoto sintassi per l'intero database dal prompt dei comandi:Come svuotare il database SQLite?

$sqlite3 database_name "VACUUM;"; 

Ma è dando errore come:

near "database_name": syntax error. 

e anche AUTO VUOTO:

PRAGMA auto_vacuum = INCREMENTAL; 

e ha cercato per una tabella specifica come:

VACUUM table_name; 

Ma nessun risultato.

risposta

16

Non specificare il nome della tabella nella sintassi. Solo VACUUM funziona.

Inoltre, pulirà solo il database principale e non tutti i file di database allegati.

Per ulteriori informazioni, fare riferimento a SQLite documentation.

+1

questa pagina suggerisce che la sua possibile sulla table http://www.tutorialspoint.com/sqlite/sqlite_vacuum.htm –

+0

'VACUUM' dalla riga di comando sqlite3 sarà solo il database principale VACUUM. I database collegati possono essere VACUUMED solo da 'versione 3.15.0' di sqlite3 verison. Per le versioni precedenti, il nome del database * deve * essere specificato, questo funziona da 'bash' come menzionato nella risposta @ yöliitäjä: ' $ sqlite3 database_name 'VACUUM;' ' –

1

Dare il comando come questo:

$sqlite3 database_name 'VACUUM;' 

È un dato di fatto, questo è il modo di fare anche altre query da riga di comando:

$sqlite3 database_name 'select * from tablename;' 
Problemi correlati