It should be possible to come close to the INCREMENTAL size an MDB should reflect -IF (and ONLY if) you are able to keep track of every database (table) transaction. since the overhead for this would be considerably in excess of the actual compact routine, I know of no attempt to actually do it. Mostly it is done on a regularly schedualed basis, with the interval determined by the dba.
On the other hand, if a db really ineeds to be compacted more often than weekly, you are probably either doing something 'bad' or are using the wrong db engine.
Ms. A, like most of the less than 'Industrial strength' db engines, doesn't actually "delete" records (or anything else) untill the compact process is executed, and it "deletes" them then by copying all of the 'active' objects in the source db to a (new) target db. If you have a lot of records and a lot of transactions on the records, it is likely that the db will "bloat" to the point of impacting performance within just a few days. If this is occuring, it is probably time to move on (to the "Industrial Strength" db engine).
MichaelRed
m.red@att.net
Searching for employment in all the wrong places