Как можно скопировать таблицу? Есть простой способ копировать целую таблицу базы данных с компонентом TTable:
procedure CopyTableStructure(Source: TTable; DB,Dest: string );
var NewTable: TTable;
begin
NewTable := TTable . Create(self);
with NewTable do
begin
Databasename := DB;
Tablename := Dest;
FieldDefs . Assign(Source . FieldDefs);
IndexDefs . Assign(Source . IndexDefs);
CreateTable;
NewTable . Destroy;
end ;
end ;
|
Параметры, которые Вы должны передать этой функции - открытый объект TTable, BDE псевдоним и имя новой таблицы:
Table1 . Active := true ;
CopyTableStructure(Table1, 'DBALIAS' , 'NewTable' );
|
Копирование всего содержимого также просто:
var
hs: string ;
i: integer ;
Source . First;
with NewTable do
begin
while not Source . EOF do
begin
Append;
for i := 0 to Source . FieldCount - 1 do
begin
hs := Source . Fields[i].FieldName;
NewTable[hs] := Source[hs];
end ;
Source . Next;
end ;
end ;
end ;
Source . Next;
end ;
post;
end ;
|
Комментарии