With Aq1 do
  begin
    Close;
    Str(Tousu1[i],TouSux);
    Str(ZiXun1[i],ZiXunx);
    Str(QiTa1[i],QiTax);
    Sql.Clear;
    Sql.Add('Insert Into QueryAnalysis(PlaceName,TouSu,ZiXun,QiTa) ');
    Sql.Add(' Values( ');
    Sql.Add(' '''+ProcTypeName[i]+''', ');
    Sql.Add(TouSux,ZiXunx,QiTax);
    Sql.Add(' ) ');
    ExecSql;
编译时在倒数第三行产生错误:“Too many actual parameters”
到底怎么回事呀?谢谢啦!!!

解决方案 »

  1.   

    Sql.Add(TouSux+','+ZiXunx+','+QiTax);
      

  2.   

    Sql.Add(''''+TouSux+''','''+ZiXunx+''','''+QiTax+'''');
      

  3.   

    With Aq1 do
      begin
        Close;
        Str(Tousu1[i],TouSux);
        Str(ZiXun1[i],ZiXunx);
        Str(QiTa1[i],QiTax);
        Sql.Clear;
        Sql.Add('Insert Into QueryAnalysis(PlaceName,TouSu,ZiXun,QiTa) '+
        ' Values('''+ ProcTypeName[i]+ ''',TouSux,ZiXunx,QiTax) ');
        ExecSql;如果字段TouSu,ZiXun,QiTa是char或varchar型的,也要加上引号。
      

  4.   

    insert into table(PlaceName,TouSu,ZiXun,QiTa) values(:PlaceName,:TouSu,:ZiXun,:QiTa)
    parambyname('placename').asvalue=...
    parambyname('tousu').asvalue=.
      

  5.   

    With Aq1 do
      begin
        Close;
        Str(Tousu1[i],TouSux);
        Str(ZiXun1[i],ZiXunx);
        Str(QiTa1[i],QiTax);
        Sql.Clear;
        Sql.Add('Insert Into QueryAnalysis(PlaceName,TouSu,ZiXun,QiTa) '+
        ' Values('''+ ProcTypeName[i]+ ''','''+TouSux+''','''+ZiXunx+''','''+QiTax''') ');
        ExecSql; 
      

  6.   

    应该用qxj(borland中国)兄的办法。这样,可以更明了,好理解,也不容易出错。一看就能看出那个参数对应的值。
      

  7.   

    Sql.Add(TouSux+','+ZiXunx+','+QiTax);