数组temp: array[0..1202] of array有1203个元素,要依次添加进数据表table中,请问如何写这条sql

解决方案 »

  1.   

    for i:=0 to 1202 do
      begin
        adoquery2.SQL.Add('insert cert(stubirthyear,stubirthmon,stubirthday)');
        adoquery2.SQL.Add('values('+''''+Numtoyear(leftstr(temp[i],4))
          +''''+','+''''+Numtomon(leftstr(rightstr(temp[i],4),2))
          +''''+','+''''+Numtoday(rightstr(rightstr(temp[i],4),2))
          +''''+')');
        adoquery2.Active:=true;
        adoquery2.ExecSQL;
      end;我是在循环里exec sql的语句,可是系统抛出异常insert 语法错误,请我帮看看哪里错了啊
      

  2.   

    for i:=0 to 1202 do
      begin
        adoquery2.Active:=false;
        adoquery2.SQL.Clear;
        adoquery2.Prepared;
        adoquery2.SQL.Add('insert cert(stubirthyear,stubirthmon,stubirthday)'
          +'values('+''''+Numtoyear(leftstr(temp[i],4))
          +''''+','+''''+Numtomon(leftstr(rightstr(temp[i],4),2))
          +''''+','+''''+Numtoday(rightstr(rightstr(temp[i],4),2))
          +''''+')');
        adoquery2.Active:=true;
        adoquery2.ExecSQL;
      end;
    改成这样还是一样的错误,我用showmessage 看 sql语句,是对的阿
      

  3.   

    insert 后应有 into 关键字啊
      

  4.   

    先定义一个变量SQLText:String ,将1023条Insert 语句添加到SQLText 中然后一次提交。如还有错你可能将SQLText的值放到查询分析器中去执行检查一下。还有你为什么不用 With 呢?还有用#39来给字符两边加单引号更不容易出错.一定是你检查不仔细。 ^_^