Как удалить BDE таблицу

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Данный пример удаляет таблицу, достаточно только указать каталог и имя таблицы, остальное сделает BDE, удалит таблицу, все индексы и связанные файлы.

uses

DB, DBTables, DbiProcs, DbiErrs, DbiTypes;

procedure DeleteTable(Dir, TblName: String);

var

DBHandle: HDBIDB;

ResultCode: DBIResult;

tbl, Err: Array[0..255] of Char;

SrcTbl: TTable;

begin

SrcTbl := TTable.Create(Application);

try

SrcTbl.DatabaseName := Dir;

SrcTbl.TableName := TblName;

SrcTbl.Open;

DBHandle := SrcTbl.DBHandle;

SrcTbl.Close;

ResultCode := DbiDeleteTable(DBHandle,

StrPCopy(Tbl,Dir ‘\’ TblName), nil);

if ResultCode DBIERR_NONE then

begin

DbiGetErrorString(ResultCode,Err);

raise EDatabaseError.Create(‘While deleting ‘

Dir ‘\’ TblName ‘, the database ‘

‘engine generated the error »’ StrPas(Err) »»);

end;

finally

SrcTbl.Free;

end;

end;

{/codecitation}

Добавить комментарий