commandtext := ‘select * from ’ + strtablename;
open;
savetofile(strfilename);
close;
end;
end;
2.数据表的导入
下面是一个导入操作的示例(假定存在相同主键记录时更新目的表;假定数据表为单主键字段,且其字段类型为字符串型)。
procedure importdata(strfilename, strtablename, strkeyfieldname: string);
begin
with adodataset1 do
begin
close;
loadfromfile(strfilename);
first;
while not eof do
begin
strkeyvalue := fieldbyname(strkeyfieldname).asstring;
if recordindest(strtablename, strkeyfieldname, strkeyvalue) then
begin
adodatadest.close;
adodatasetdest.commandtext := format(‘select * from %s where %s=%s’,[strtablename, strkeyfieldname, quotedstr(strkeyvalue)]);
adodatasetdest.open;
adodatasetdest.first;
adodatasetdest.edit;
for i:=0 to fieldlist.count-1 do
adodatasetdest.fields[i] := fields[i];
adodatasetdest.post;
end
else // 添加记录
begin
adodatadest.close;