SQLite Forum

Setting non-binary columns to null in a table with a binary column populated with data creates free space and a larger file
Login
Correct. If I update the row and set the non-blob fields to have values, then update again them to null, the file size remains the same.

We actually use NHibernate to manage our database, and when a item gets deleted NHibernate issues a update that nulls the reference columns, then issues a delete command. This is where one of our users noticed their project was growing after deleting very large items. (Some of these items can be in the hundreds of MB).

I narrowed down the growing behavior to the update command which surprised me. If a delete command is only used, the file size remains the same (which is expected).