M
makilyang
Unregistered / Unconfirmed
GUEST, unregistred user!
我在一个程序中用了一个记录文件保存ComboBox控件的列表项。这个文件是从数据中
更新数据。下面是源程序
procedure TForm1.N15Click(Sender: TObject);
type
Tlistcfg = packed record
Sell_list:string[30];
leibie:string[30];
cost:string[10];
end;
var
Listcfg:Tlistcfg;
text: File of Tlistcfg;
begin
assignFile(TEXT,'listcfg/LISTCFG.mkc');
rewrite(text);
mkdata.ADOQuery1.Close ;
mkdata.ADOQuery1.SQL.Clear ;
mkdata.ADOQuery1.SQL.Add('select * from List_cfg order by sell_list asc');
mkdata.ADOQuery1.Open ;
while not mkdata.ADOQuery1.Eof do
begin
listcfg.Sell_list:=mkdata.ADOQuery1.Fields[1].asstring;
listcfg.cost:=mkdata.ADOQuery1.Fields[2].AsString ;
listcfg.leibie :=mkdata.ADOQuery1.fields[4].asstring;
seek(text,Filesize(text));
write(text,listcfg);
mkdata.ADOQuery1.Next;
end;
end;
为什么每次执行后会将原来数据重复增加后面
如
我数据库中有这样的数据
NAME Leibie Cost
Piii800 CPU 920
每执行上面程序一次后.记录文件中就会增加一条这样的记录。但重新启动程序后
再执行上面一次就又变成一条。是为什么?
更新数据。下面是源程序
procedure TForm1.N15Click(Sender: TObject);
type
Tlistcfg = packed record
Sell_list:string[30];
leibie:string[30];
cost:string[10];
end;
var
Listcfg:Tlistcfg;
text: File of Tlistcfg;
begin
assignFile(TEXT,'listcfg/LISTCFG.mkc');
rewrite(text);
mkdata.ADOQuery1.Close ;
mkdata.ADOQuery1.SQL.Clear ;
mkdata.ADOQuery1.SQL.Add('select * from List_cfg order by sell_list asc');
mkdata.ADOQuery1.Open ;
while not mkdata.ADOQuery1.Eof do
begin
listcfg.Sell_list:=mkdata.ADOQuery1.Fields[1].asstring;
listcfg.cost:=mkdata.ADOQuery1.Fields[2].AsString ;
listcfg.leibie :=mkdata.ADOQuery1.fields[4].asstring;
seek(text,Filesize(text));
write(text,listcfg);
mkdata.ADOQuery1.Next;
end;
end;
为什么每次执行后会将原来数据重复增加后面
如
我数据库中有这样的数据
NAME Leibie Cost
Piii800 CPU 920
每执行上面程序一次后.记录文件中就会增加一条这样的记录。但重新启动程序后
再执行上面一次就又变成一条。是为什么?