query1.Close;
query1.SQL.Clear;
query1.SQL.Add('delete from dwdzd');
query1.ExecSQL;
query1.SQL.Clear;
query1.SQL.Add('select a.sbh,a.dwdm,a.xm,b.dwmc');
query1.SQL.Add(' from grjbxx a,dwjbxx b where a.dwdm=b.dwdm and a.dwdm=:dwdm1');
query1.Params[0].AsString:=dwdm.Text;
query1.Open;
query1.Last;
query1.First;
while not query1.Eof do
begin
query.Close;
query.SQL.Clear;
query.SQL.Add('insert into dwdzd (sbh,dwdm,dwmc,xm,zzgz,txgz,zhsr1,bnlx,cszh,ljsr,ljlx,qtsr,ickf,mzzc,qtzc,zhye) values');
query.SQL.Add(' (:sbh,:dwdm,:dwmc,:xm,:zzgz,:txgz,:zhsr1,:bnlx,:cszh,:ljsr,:ljlx,:qtsr,:ickf,:mzzc,:qtzc,:zhye)');
query.Params[0].AsString:=lwsbh;
query.Params[1].AsString:=lwdwdm;
query.Params[2].AsString:=lwdwmc;
。。
query.ExecSQL;
query1.Next;
end
怎么表里只有一条数据呢???
query1.SQL.Clear;
query1.SQL.Add('delete from dwdzd');
query1.ExecSQL;
query1.SQL.Clear;
query1.SQL.Add('select a.sbh,a.dwdm,a.xm,b.dwmc');
query1.SQL.Add(' from grjbxx a,dwjbxx b where a.dwdm=b.dwdm and a.dwdm=:dwdm1');
query1.Params[0].AsString:=dwdm.Text;
query1.Open;
query1.Last;
query1.First;
while not query1.Eof do
begin
query.Close;
query.SQL.Clear;
query.SQL.Add('insert into dwdzd (sbh,dwdm,dwmc,xm,zzgz,txgz,zhsr1,bnlx,cszh,ljsr,ljlx,qtsr,ickf,mzzc,qtzc,zhye) values');
query.SQL.Add(' (:sbh,:dwdm,:dwmc,:xm,:zzgz,:txgz,:zhsr1,:bnlx,:cszh,:ljsr,:ljlx,:qtsr,:ickf,:mzzc,:qtzc,:zhye)');
query.Params[0].AsString:=lwsbh;
query.Params[1].AsString:=lwdwdm;
query.Params[2].AsString:=lwdwmc;
。。
query.ExecSQL;
query1.Next;
end
怎么表里只有一条数据呢???
如果不确定,可以把代码放到查询分析器里执行一下,看看有多少记录。---------
你结帐率好低。
那样岂不是每次都做第一条记录?
所以插入一条咯,把query.close去掉试试