Hi, After running the following script in sqlite 3.8.7.1:
set dbfile {c:/temp/db.sqlite3} file delete -force $dbfile sqlite3 ::db $dbfile ::db eval { PRAGMA journal_mode = WAL; create table test2 (id, txt) } for {set i 0} {$i < 10000} {incr i} { set t txt$i ::db eval {insert into test2 values($i,$t)} } ::db eval {PRAGMA wal_checkpoint(FULL)} puts a=[file size $dbfile] ::db eval { delete from test2; PRAGMA wal_checkpoint(FULL); vacuum; } puts b=[file size $dbfile] ::db eval {vacuum} puts c=[file size $dbfile] ::db close puts d=[file size $dbfile] I got as result: a=177152 b=177152 c=177152 d=2048 Is there a way to shrink the file when it is still open in WAL mode? Thank you Ren? Kernkraftwerk Goesgen-Daeniken AG CH-4658 Daeniken, Switzerland Diese Nachricht (inkl. Anhaenge) beinhaltet moeglicherweise vertrauliche oder gesetzlich geschuetzte Daten oder Informationen. Zum Empfang derselben ist (sind) ausschliesslich die genannte(n) Person(en) bestimmt. Falls Sie diese Nachricht irrtuemlicherweise erreicht hat, sind Sie hoeflich gebeten, diese unter Ausschluss jeder Reproduktion zu vernichten und den Absender umgehend zu benachrichtigen. Besten Dank.