with adoquery3 do
                       begin //8
                       Close;
                       SQL.Clear;
                                            SQL.Add('insert into ls values(:项目编码,:单位,:数量,:实售价,:优惠额,:批号,:生产日期,: 失效日期,:含税进价,:零售单号,:销售日期,:销售员,:会员号)' );
                       
                       parameters.ParamByName('项目编码').Value:=ADOQLSCX.fieldbyname('项目编码').AsString;
                       parameters.ParamByName('单位').Value:=ADOQLSCX.fieldbyname('单位').AsString;
                       parameters.ParamByName('数量').Value:='1';
                       parameters.ParamByName('实售价').Value:=ADOQLSCX.fieldbyname('零售价').AsVariant;                       parameters.ParamByName('优惠额').Value:='0.00';                       parameters.ParamByName('批号').Value:=ADOQuery4.fieldbyname('批号').AsString;
                       parameters.ParamByName('生产日期').Value:=ADOQuery4.fieldbyname('生产日期').AsString;
                       parameters.ParamByName('失效日期').Value:=ADOQuery4.fieldbyname('失效日期').AsString;
                       parameters.ParamByName('含税进价').Value:= ADOQLSCX.fieldbyname('含税进价').AsString;
                       parameters.ParamByName('零售单号').Value:=edit15.Text;
                       parameters.ParamByName('销售日期').Value:=Date;                       parameters.ParamByName('销售员').Value:=dbedit1.Text;
                       parameters.ParamByName('会员号').Value:=edit1.Text;                       execsql;
                       end;
报错:查询值数目与目标字段不一样

解决方案 »

  1.   

    parameters.ParamByName('数量').Value:=1;
    parameters.ParamByName('实售价').Value:=ADOQLSCX.fieldbyname('零售价').AsVariant;
    parameters.ParamByName('优惠额').Value:=0.00;
      

  2.   

    不敢把错误信息拿来给大家看看么??
    insert里面的占位符用英语的试试~~
      

  3.   

    不用赋值,自动对应,自己添加的比如ls(a,b,c,d),a是自动编号:
    insert into ls values(1,2,3)
    结果是1,2,3插入到b,c,d又比如ls(a,b,c,d),c是自动编号:
    insert into ls values(1,2,3)
    结果是1,2,3插入到a,b,d
      

  4.   

    id(自动编号)由系统来赋值,你不用理它。这样写就可以了。insert into ls (项目编码,单位,数量....) values (:项目编码,:单位,:数量.....)
    列表中没有的字段,系统会根据表设置时的要求,自动处理的。
      

  5.   

    不行呀 提示将null 添加到非variat。。