2010-12-14 63 views

Répondre

4

La suppression de tables de la base de données ne réduit pas sa taille dans Sqlite. Sa taille restera la même que la taille maximale atteinte.

+0

Pourquoi est-ce conçu de cette façon? – lex

+1

Pour des raisons de performances. Un fichier tronqué peut être une opération coûteuse pour certains systèmes de fichiers. Vous pouvez utiliser la commande vacuum si vous voulez vraiment compacter le fichier de base de données. – hmuelner

3

Parce qu'il doit être shrunk.

À moins SQLite fonctionne en « auto_vacuum = FULL » Mode, lorsqu'une grande quantité de données est supprimée du fichier base de données il laisse derrière espace vide , ou les pages de base de données « libres ». Ce signifie que le fichier de base de données est peut-être plus grand que strictement nécessaire . L'exécution de VACUUM pour reconstruire la base de données récupère cet espace et réduit la taille du fichier de base de données.