雖然不知道Access中的數據刪除後數據庫占的空間不會減少的原因,但是總算可以解決由這個問題帶來的麻煩,最好的辦法就是將access數據庫壓縮,效率比較高,而且可以提高系統的性能,保證系統能正常穩定的運行。
通過DBEngine壓縮,各位是否還記得安裝Delphi的時候,如果你選擇自定義安裝(我一般用Delphi寫控件,所以當然是越小越好),會有很多安裝選項,讓你選擇Access97或Access2000,還有MDAC等,問題就在這裡!
use ComObj;
var dao:OLEVariant;
dao:=CreateOleObject('DAO.DBEngine.36');//'DAO.DBEngine.36'
dao.CompactDatabase('Test.mdb','newTest.mdb');
如果需要的話,就用RenameFile將數據庫名字改成你想要,現在關鍵的一點就是CreateOleObject,對於access97可以用3.5或者3.6,但是對於access 2000及其以上的版本則需要用3.6否則,將會不能識別數據庫格式。
如果數據庫是自己用的,不是給客戶的,也可以用access裡面的“數據庫實用工具”來“壓縮和修復數據庫”