您的位置:首页 > 其它

ADO.NET事务处理

2013-03-16 16:10 417 查看
1。使用存储过程事务处理

2。使用SqlTransaction 类

SqlConnection conn = new SqlConnection("Data Source=192.168.1.105;uid=sa; password=sa;database = kaiyuan");

   conn.Open();

   //启用事务

   SqlTransaction tran = conn.BeginTransaction();

   SqlCommand cmd = new SqlCommand();

   cmd.Connection = conn;

   cmd.Transaction = tran;

   try

   {

    cmd.CommandText = "UPDATE SH_Material Set MaterialCode='25' WHERE ID = 25";

    cmd.ExecuteNonQuery();

    cmd.CommandText = " UPDATE SH_Material Set MaterialCode='new' WHERE ID = 26  ";

    cmd.ExecuteNonQuery();

     tran.Commit();

    MessageBox.Show("事务提交成功!");

   }

   catch(Exception ex)

   {

       tran.Rollback();

    MessageBox.Show("Error!"+ex.Message);

   }

   finally

  {

      conn.Close();

  }

 

 

如果在sql语句中写BEGIN TRANSACTION  , COMMIT TRANSACTION是不会有作用的

   sql="BEGIN TRANSACTION \r\n"

    +sql+" \r\n"

    +"COMMIT TRANSACTION";
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: