请问如何在程序里压缩和修复ACCESS数据库?

解决方案 »

  1.   

    function CompactDatabase(FileName : string): boolean;
    var
      dao : OLEVariant;
    begin
     //压缩是以独占方式进行的;压缩前要关闭数据库连接。
      Result := false;
      try
        dao:=CreateOleObject('DAO.DBEngine.36'); //access2000要用dao3.6,在access97上用35和36都可以
        dao.CompactDatabase(FileName,'temp.mdb');
        DeleteFile(FileName);
        RenameFile('temp.mdb',FileName);
      except
        //失败
        exit;
      end;
      Result := true;
    end;
      

  2.   

    我用的是ADOConnection1连接数据库。