通过ClientDataSet复制表的结构及数据

时间:2023-03-09 15:33:50
通过ClientDataSet复制表的结构及数据

1、  需要2个ClientDataSet组件;

2、  clientDataSet1连接目标表,clientDataSet2连接源表,如果无法直接连接,使用DataSetProvider进行桥接;

通过ClientDataSet复制表的结构及数据

3、  复制clientDataSet2结构到clientDataSet1;

for I := 0 to clientDataSet2.FieldDefs.Count-1 do

fieldNames:=fieldNames+clientDataSet2.FieldDefs[i].Name+';';

list:=Tlist.Create;

clientdataset2.GetFieldList(list,fieldNames);

for I := 0 to list.count-1 do

begin

field:=list[i];

clientDataSet1.FieldDefs.Add(field.fullName,field.DataType,field.Size);

end;

clientdataset1.CreateDataSet;

4、  复制clientDataSet2数据到clientDataSet1。

clientdataset1.Data:=clientdataset2.Data;