title: Can you "compact" a SQLite database on-the-fly once it's deployed on an android device?
body: <p>After creating my first SQLite database for use in an Android app I found that it seriously needed compacting after just a few 'drop table' operations etc. Then after reading some of the SQLite documentation it made sense as to why - that unlike most databases, SQLite uses variable length records to store data very efficiently. But this suggests to me that in everyday use it would need compacting all the time to keep it at optimum space-efficiency - especially on an Android device where internal memory is at a premium. </p>
  
  <p>So can this be done programmatically from your Android app once it's deployed on a device? And is it common practice, or wise,  to do this frequently? I ask this because I don't know what sort of memory the internal memory of an Android device is - if it's flash memory like the SD card then constantly changing the database (or indeed any files) would not be good for its lifespan, would it not? </p>