压缩和修复MS Access 2000文件

时间:2010-02-26 18:24:22  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:”完成,或者也可以在你的Delphi程序中完成。 procedure TMainFrm.CompressDB;var  DaoVar: OLEVariant;begin     screen.Cursor :=crHourGlass;&nbs...
  正文:我们知道,由于使用内部高速缓存和临时缓冲区,MS Access文件随着使用时间快速增加。这些多余的空间的浪费远超出它对性能的影响,并且备份时会需要很大的空间。解决它的办法是压缩,通过选择Access 2000的菜单“工具->数据库实用工具->压缩和修复数据库”完成,或者也可以在你的Delphi程序中完成。



procedure TMainFrm.CompressDB;
var  DaoVar: OLEVariant;
begin  
  screen.Cursor :=crHourGlass;  
  if dmfrm.ADOConnection1.Connected then dmfrm.ADOConnection1.Connected :=false;  
  try
    DaoVar := CreateOleObject('DAO.DBEngine.36');
    if FileExists('misdbnew.mdb') then deletefile('misdbnew.mdb'); //删除文件“misdbnew.mdb”
      DaoVar.CompactDatabase('MisDB.mdb','misdbnew.mdb');//压缩“misdb.mdb” 到”misdbnew.mdb“
      if deletefile('MisDB.mdb') then                    //删除文件“misdb.mdb”
      RenameFile('misdbnew.mdb','MisDB.mdb');           //将“misdbnew.mdb”改名为”misdb.mdb“
  finally
      screen.Cursor :=crDefault;
    end;
  end;



注意:
1- 在你的uses语句中必须加入ComCtrls单元。

2- 在压缩的过程中,其它人不能打开或使用数据库。

3- 修复压缩数据库时,若出现“类字符串无效”。
原 因 是:用户计算机中没有或者未注册“DAO360.DLL”文件。
解决办法:若$(system)目录中没有上述文件,则复制该文件到$(system)目录下;若$(system)目录有上述文件,那么在$(system)目录下执行下列命令:
regsvr32 dao360.dll
注:$(system)目录,即为用户计算机中操作系统的系统目录。如:“C:WindowsSystem” 。

压缩和修复MS Access 2000文件》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Language/Delphi/12931.html


关键字:

关于《压缩和修复MS Access 2000文件》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td