各位大峡请帮忙看看,我这段代码错在什么地方啊? ADOQuery1.Close;
 ADOQuery1.SQL.Clear;
 ADOQuery1.SQL.Text :='update compartmentuse  set  ydtime=abuttime where (cuid= '+quotedstr(fid)+')';ADOQuery1.ExecSql;其中ydtime是整形,abuttime是整形变量,当我执行的时候总提示update语句出错,请问怎么把一个变量付给一个字段啊????在线等待.请大家帮帮忙.. 

解决方案 »

  1.   

    ADOQuery1.Close;
     ADOQuery1.SQL.Clear;
     ADOQuery1.SQL.Text :='update compartmentuse  set  ydtime=:abuttime where (cuid= '+quotedstr(fid)+')';
     ADOQuery1.Parameters.ParamByName('abuttime').Value := abuttime;ADOQuery1.ExecSql;
      

  2.   

    好象不行哦,这个语句执行不通过哦,总是提示:ADOQuery1.Parameters:'abuttime'not find,即使我换成其它字段夜不可以哦
      

  3.   

    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Text := 
      format('update compartmentuse  set  ydtime = %d where cuid= ''%s'' ',[abuttime,fid ]);
    ADOQuery1.ExecSql;
      

  4.   

    ADOQuery1.Close;
     ADOQuery1.SQL.Clear;
     ADOQuery1.SQL.Text :='update compartmentuse  set  ydtime=:abuttime where  cuid= '''+quotedstr(fid)+'''';
      

  5.   

    ADOQuery1.SQL.Text :='update compartmentuse  set  ydtime='+abuttime+' where (cuid= '+quotedstr(fid)+')';