用 
try 
   
   MyTrans = objSqlCon.BeginTransaction
   ....
    
   dataadapter1.update(ds1.tables[0]);
   dataadapter2.update(ds1.tables[1]);
   dataadapter3.update(ds1.tables[2]);   mytrans.commit
catch ex 
   mytrans.rollback
finally
   objSqlCon.close
end try

解决方案 »

  1.   


       
       事务对象 = 连接对象.BeginTransaction();
       ds1.InsertCommand.Transaction=事务对象;
       ds1.DeleteCommand.Transaction=事务对象;
       ds1.UpdateCommand.Transaction=事务对象;
     try {   
       ds1.update(ds1.tables[0]);
       ds1.update(ds1.tables[1]);
       ds1.update(ds1.tables[2]);
       事务对象.Commit();}
    catch{
       事务对象.Rollback();
    }
      

  2.   

    SqlConnection conn = new SqlConnection(cnStr);
    conn.Open();
    //启用事务
    SqlTransaction tran = conn.BeginTransaction();
    SqlCommand cmd = new SqlCommand();
    cmd.Connection = conn;
    cmd.Transaction = tran;
    try
    {
    cmd.CommandText = "update BeijingUser set balance = balance - 1000 where uid = '123456'";
    cmd.ExecuteNonQuery();
    cmd.CommandText = "update ShanghaiUser set balance = balance + 1000 where uid = '456789'";
    cmd.ExecuteNonQuery();
    tran.Commit();
    Response.Write("<script>window.alert('事务提交成功!');</script>");
    }
    catch(Exection ex)
    {
    tran.Rollback();
    Response.Write("<script>window.alert('事务提交失败,事物会滚!');</script>");
    }
      

  3.   

    http://community.csdn.net/Expert/topic/3673/3673314.xml?temp=.4528009
    你参考一下!