关于事务的一个小例子

必须写在conn.open() 和Conn.close() 之间

 

 

            SqlConnection conn = new SqlConnection(connstr);

            SqlCommand comm = new SqlCommand("update " + tb_TableName.Text + " set States=100 where tempid=4", conn);

            conn.Open();

            SqlTransaction trans = conn.BeginTransaction();

            comm.Transaction = trans; 

            int i = comm.ExecuteNonQuery();

            try

            {

                comm.CommandText = "update " + tb_TableName.Text + " set States=200  where tempid=5";

                int j = comm.ExecuteNonQuery();

                trans.Commit();

            }

            catch (Exception ex)

            {

                trans.Rollback();

                MessageBox.Show(ex.Message);

            }

            finally

            {

                conn.Close();

            }

 

如果是出现异常的话.就会回滚到数据的最初开始操作的状态

 

posted @ 2013-08-06 09:18  .F.  阅读(53)  评论(0)    收藏  举报