Форум: "Базы";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
ВнизКопирование из одной базы в другую Найти похожие ветки
← →
M126 (2003-07-18 08:41) [0]Здравстуйте, Мастера. Как скопировать данные из одной базы (Table1) в другую(Table3)? Новую базу я создал теперь не знаю как в неё перенести данные из основной базы где Flag1 = false
Table3.Active:=false;
Table3.TableName:="kassend.dbf";
If not Table3.Exists then begin
with Table3 do begin
TableType:=ttDBase;
with FieldDefs do begin
Clear;
with AddFieldDef do begin
Name:="NO";
DataType:=ftString;
Size:= 10;
end;
with AddFieldDef do begin
Name:="KOD_KL";
DataType:=ftString;
Size:= 4;
end;
with AddFieldDef do begin
Name:="NAME_KL";
DataType:=ftString;
Size:= 50;
end;
with AddFieldDef do begin
Name:="Flag1";
DataType:=ftBoolean;
end;
end;
with IndexDefs do begin
Clear;
with AddIndexDef do begin
Name:="";
Fields:="NO";
Options:=[ixPrimary];
end;
end;
CreateTable;
Open;
Insert;
FieldByName("NO").AsString:="?";
FieldByName("KOD_KL").AsString:="?";
FieldByName("NAME_KL").AsString:="?";
FieldByName("Flag1").AsBoolean:=true;
Post;
end;
end;
Подскажите пдиз как дальше?
← →
Stas (2003-07-18 08:54) [1]While not Table1.Eof do
begin
Table3.Insert;
For I:=0 to Table1.Fields.count-1
do begin
Table3.fields[i].asVariant=Table1.fields[i].asVariant;
end;
Table3.Post;
Table1.Next
end;
Вроде бы так.
← →
-=Vlad=- (2003-07-18 18:55) [2]Можно намного проще и быстрее.
Сначала необходимо отфильтровать
Table1.Open;
Table1.Filter:="Flag1=false";
Table1.Filtered:=True;
А затем само копирование
Table3.BatchMove(Table1,batAppend);
> Stas © (18.07.03 08:54)
> Вроде бы так.
Нет не так ;-)
← →
-=Vlad=- (2003-07-18 19:03) [3]Кстати M126, можешь не сильно замарачиваться со стуктурой создаваемой базы, а в BatchMove используй batCopy
для разъяснения см. Help
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.08.11;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c