Mega Code Archive

 
Categories / Delphi / ADO Database
 

Pack a Table

Title: pack a Table? function dgPackParadoxTable(Tbl: TTable; Db: TDatabase): DBIResult; { Packs a Paradox table by calling the BDE DbiDoRestructure function. The TTable passed as the first parameter must be closed. The TDatabase passed as the second parameter must be connected. } var TblDesc: CRTblDesc; begin Result := DBIERR_NA; FillChar(TblDesc, SizeOf(CRTblDesc), 0); StrPCopy(TblDesc.szTblName, Tbl.TableName); TblDesc.bPack := True; Result := DbiDoRestructure(Db.Handle, 1, @TblDesc, nil, nil, nil, False); end; function dgPackDbaseTable(Tbl: TTable): DBIResult; { Pack a dBASE table by calling DbiPackTable. The table passed as a parameter will be opened if it isn't open. } begin Result := DBIERR_NA; if Tbl.Active = False then Tbl.Open; Result := DbiPackTable(Tbl.DBHandle, Tbl.Handle, nil, nil, True); end;