adoquery1.SQL.Clear ;
adoquery1.SQL.Add('select * from spzy_sb_dd');
adoquery1.Open;
adoquery2.SQL.Add('select * from spzy_sb_dd where zydm='''+edit25.text+'''');
adoquery2.Open;
adoquery1.append;
for i:=0 to adoquery2.FieldCount -1 do
begin
if (adoquery2.Fields[i].fieldname<>'zydm') and (adoquery2.Fields[i].fieldname<>'yks') and (adoquery2.Fields[i].fieldname<>'ykszr') and (adoquery2.Fields[i].fieldname<>'zyks') and (adoquery2.Fields[i].fieldname<>'zybj') and (adoquery2.Fields[i].fieldname<>'dyrq') then
adoquery1.fieldbyname(adoquery2.fields[i].FieldName ).assign(adoquery2.Fields[i]);
end;
baoj:=adoquery2.fieldbyname('zybj').asstring;
adoquery1.FieldByName('zydm').AsString:=edit12.Text;
adoquery1.FieldByName('yks').AsString:=edit19.text;
adoquery1.FieldByName('ykszr').AsString:=edit23.text;
adoquery1.FieldByName('zyks').AsString:=edit3.Text;
adoquery1.FieldByName('zykszr').AsString:=edit24.text;
adoquery1.FieldByName('zybj').AsString:='1';
adoquery1.FieldByName('dyrq').AsString:=datetostr(datetimepicker1.date);
adoquery1.FieldByName('gzz').asstring:= Appinfo.gzzh;
adoquery1.FieldByName('czydm').asstring:= Appinfo.Czycode;
adoquery1.FieldByName('czymc').asstring:=Appinfo.CzyName;
adoquery1.FieldByName('czrq').asdatetime:=now;
adoquery1.Post; adoquery2.edit;
adoquery2.FieldByName('zybj').AsString:='0';
adoquery2.execsql;
showmessage(adoquery2.fieldbyname('zybj').asstring);
帮忙看一下 哪有什么不对啊 比较急 谢谢大家了!在线等候
其中Adoquery2中的记录为ADOQUERY1的前一条记录
得实现adoquery2的zybj为0adoquery1的zybj=1
adoquery1.fieldbyname(adoquery2.fields[i].FieldName ).assign(adoquery2.Fields[i]);
end;
最后那个end去掉最后那段,adoquery2.execsql; 改成
adoquery2.post;别的,不想再看了,太乱。
adoquery2.FieldByName('zybj').AsString:='0';
adoquery2.execsql; 这里改成adoquery2.post;