try:组合成类似的语句形式
begin
insert into tbname values ...;
insert into tbname values ...;
insert into tbname values ...;
end;

解决方案 »

  1.   

    sql +=  "insert into test values(" + i + "," + i +");" + "\n";
    这样可以吗
      

  2.   

    TAdoDataSet的commandtext是widestring,只能执行单句SQL的。
    用DOA控件好了,专为Oracle定做的,其中的TOracleDataSet等都可以执行PL/SQL块。
    var
      dataset1:toracledateset;
    begin
      dataset1:=toracledateset1.create(self);
      try
        with dataset1 do
        begin
          session:=mainsession; //mainsession是Toraclesession
          sql.add('begin');
          sql.add('insert into ...;');
          sql.add('insert into ...;');
          ....
          sql.add('end;');
          executesql;
        end;
        mainsession.commit;  finally
        dataset1.free;
      end;
    end;
      

  3.   

    或者
    组合成类似的语句形式
    insert into tbname 
    select 'aaa','bbb','ccc' from dual
    union all
    select 'aaa','bbb','ccc' from dual
    union all
    select 'aaa','bbb','ccc' from dual;
      

  4.   

    还是单条执行的,为了和MSSQL兼容,谢谢各位了