DBF数据库不能物理删除记录?
大家有没有注意,使用DBF(不是Paradox)数据库时,
先增加若干条纪录,保存,记下DBF文件的大小。
然后再删除其中若干条纪录,保存,这个DBF文件的
大小并没有减小。如果用记事本打开这个DBF文件,
你会发现已删除的纪录数据仍在这个DBF文件中。
这样一来,DBF文件的大小不是要越来越大了吗?
怎样解决这个问题?
问题点数:81、回复次数:3Top
1 楼Nicrosoft(奈软)回复于 2000-09-05 21:11:00 得分 0
物理删除的话,你可以用foxpro打开该dbf文件,然后执行pack就可以了。Top
2 楼guoyuzhang(怒抛头颅)回复于 2000-09-05 21:47:00 得分 61
想物理删除,也简单,Delphi提供了一个函数:dbiPackTable
Top
3 楼tchaikov()回复于 2000-09-05 22:00:00 得分 20
在记录删除后,用程序删除,否则QuickReport会打印出被删除的记录的。
uses BDE;
Check(DbiPackTable(Table1.DbHandle, Table1.Handle, Nil, szDBASE, TRUE));
Top




