SQL


 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

解决方案 »

  1.   

    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;
    最后那个end去掉最后那段,adoquery2.execsql; 改成
    adoquery2.post;别的,不想再看了,太乱。
      

  2.   

    adoquery2.edit; 
        adoquery2.FieldByName('zybj').AsString:='0'; 
          adoquery2.execsql; 这里改成adoquery2.post;