我现在想点击一个按钮  同时将不同的数据插入两张不同的表当中其中  想将5个Edit中的数据插入到table1中,
然后  想把DBGridz中的3行数据插入table2中,这个只用一个ADOQuery是不是就能实现呢?麻烦给点代码提示下~~ 

解决方案 »

  1.   

    insert into table1后再insert into table2
      

  2.   

    看什么数据库了
    sqlserver可以:
    ADOQuery.sql.text:='insert t1 ..."
    +#13#10+'insert t2 ...'
    +#13#10+'insert t2 ...'
    +#13#10+'insert t2 ...'
    ;
      

  3.   

    是啊..先执行table1 的 然后 sql.clear 掉之后 在添加执行一遍不就完了
      

  4.   

    没问题的,顺序来
    仅仅插入操作可以用ADOCommand
      

  5.   

    query1.clear;
    query1.sql.add(strSql);
    query1.Execsql;
      

  6.   

    存储过程或是mssql的话可以多条语句连在一起,c#多条sql语句中间需要";"间隔,不知道delphi是不是
      

  7.   

    最好加上
    ADOConnection.BeginTrans;   
      try   
        ADOConnection.CommitTrans;   
      except   
          on   E:Exception   do   
          begin   
                ADOConnection.RollBack;   
          end;   
      end;
    这样其中一个更新失败,两个表就都不更新了
      

  8.   

    ADOQuery.sql.add
    上面说有一个更新失败
    问题在这里你可以先写一个然后要清除里面的SQL语句
    再加入表2的语句
    没发现有难度啊
      

  9.   

    可以分两次执行。
    如果是Oracle的话,可以写成个SQL块一次执行,其它的数据库没用过!