With Form3.Adoquery1 DO
    begin
      Close;
      SQL.Clear;
      SQL.Add('update 营养需要量A Set 标准=:标准1,国家=:国家1,干物质采食量(kgd)=:干物质采食量(kgd)1,维持净能(MJd)=:维持净能(MJd)1,增重净能(MJd)=:增重净能(MJd)1,');     //  5
      SQL.Add('妊娠净能(MJd)=:妊娠净能(MJd)1,泌乳净能(MJd)=:泌乳净能(MJd)1,肉牛能量单位=:肉牛能量单位1,综合净能净能(MJd)=:综合净能净能(MJd)1,粗蛋白(gd)=:粗蛋白(gd)1,IDCPmg/d=:IDCPmgd1,IDCPggd=:IDCPggd1,IDCPcgd=:IDCPcgd1,IDCPlgd=:IDCPlgd1,');       //   9
      SQL.Add('IDCPgd=:IDCPgd1,钙gd=:钙gd1,磷gd=:磷gd1,钴(mgkg)=:钴(mgkg)1,铜(mgkg)=:铜(mgkg)1,碘(mgkg)=:碘(mgkg)1,铁(mgkg)=:铁(mgkg)1,锰(mgkg)=:锰(mgkg)1,');       //15
      SQL.Add('硒(mgkg)=:硒(mgkg)1 where 锌(mgkg)=:锌(mgkg)1');       //
       Parameters.Items[0].Value:=Edit23.Text;
      Parameters.Items[1].Value:=Edit24.Text ;
      if edit1.text='' then
      Parameters.Items[2].Value:=0
      else
      Parameters.Items[2].Value:=strtofloat(Edit1.Text);      if edit2.text='' then
      Parameters.Items[3].Value:=0
      else
      Parameters.Items[3].Value:=strtofloat(Edit2.Text);      if edit3.text='' then
      Parameters.Items[4].Value:=0
      else
      Parameters.Items[4].Value:=strtofloat(Edit3.Text);      if edit4.text='' then
      Parameters.Items[5].Value:=0
      else
      Parameters.Items[5].Value:=strtofloat(Edit4.Text);      if edit5.text='' then
      Parameters.Items[6].Value:=0
      else
      Parameters.Items[6].Value:=strtofloat(Edit5.Text);      if edit6.text='' then
      Parameters.Items[7].Value:=0
      else
      Parameters.Items[7].Value:=strtofloat(Edit6.Text);      if edit7.text='' then
      Parameters.Items[8].Value:=0
      else
      Parameters.Items[8].Value:=strtofloat(Edit7.Text);      if edit10.text='' then
      Parameters.Items[9].Value:=0
      else
      Parameters.Items[9].Value:=strtofloat(Edit10.Text);      if edit12.text='' then
      Parameters.Items[10].Value:=0
      else
      Parameters.Items[10].Value:=strtofloat(Edit12.Text);      if edit13.text='' then
      Parameters.Items[11].Value:=0
      else
      Parameters.Items[11].Value:=strtofloat(Edit13.Text);      if edit14.text='' then
      Parameters.Items[12].Value:=0
      else
      Parameters.Items[12].Value:=strtofloat(Edit14.Text);      if edit15.text='' then
      Parameters.Items[13].Value:=0
      else
      Parameters.Items[13].Value:=strtofloat(Edit15.Text);      if edit11.text='' then
      Parameters.Items[14].Value:=0
      else
      Parameters.Items[14].Value:=strtofloat(Edit11.Text);
      if edit8.text='' then
      Parameters.Items[15].Value:=0
      else
      Parameters.Items[15].Value:=strtofloat(Edit8.Text);      if edit9.text='' then
      Parameters.Items[16].Value:=0
      else
      Parameters.Items[16].Value:=strtofloat(Edit9.Text);      if edit20.text='' then
      Parameters.Items[17].Value:=0
      else
      Parameters.Items[17].Value:=strtofloat(Edit20.Text);      if edit19.text='' then
      Parameters.Items[18].Value:=0
      else
      Parameters.Items[18].Value:=strtofloat(Edit19.Text);      if edit21.text='' then
      Parameters.Items[19].Value:=0
      else
      Parameters.Items[19].Value:=strtofloat(Edit21.Text);      if edit16.text='' then
      Parameters.Items[20].Value:=0
      else
      Parameters.Items[20].Value:=strtofloat(Edit16.Text);      if edit18.text='' then
      Parameters.Items[21].Value:=0
      else
      Parameters.Items[21].Value:=strtofloat(Edit18.Text);      if edit22.text='' then
      Parameters.Items[22].Value:=0
      else
      Parameters.Items[22].Value:=strtofloat(Edit22.Text);      if edit17.text='' then
      Parameters.Items[23].Value:=0
      else
      Parameters.Items[23].Value:=strtofloat(Edit17.Text);      Prepared:=true;
      ExecSQL;
    end;

解决方案 »

  1.   

    update语句语法错误,就这一个错误
      

  2.   

    不用参数,
    直接拼凑sql字符串,会怎样呢?
    把最终的sql语句复制到查询分析器里执行,会怎样呢?
      

  3.   

    既然使用参数,又不使用名称调用还不如使用个字母代替算了!
    关键是要注意空格的问题
    增重净能(MJd)=:增重净能(MJd)1
    是什么意思?
    增重净能(MJd)字段?
      

  4.   

    对  增重净能(MJd)  是字段名称。那我把字段名全改了吧。