ADO.NET事务处理

事务使一些事件的集合,执行一条SQL语句可以理解成一个事件。事务中包含多个事件,当每一个事件都能执行成功的时候,事务才执行;如果有任何一个事件不能成功执行,事务的其他事件也不被执行。

protected void btnTrans_Click(object sender, EventArgs e)
    {
        OleDbConnection Conn = new OleDbConnection();
        Conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
            "Data Source=" + Server.MapPath("person.mdb");
        Conn.Open();
        OleDbCommand Comm = new OleDbCommand();
        OleDbTransaction Trans;
        Trans = Conn.BeginTransaction();
        Comm.Connection = Conn;
        Comm.Transaction = Trans;
        try
        {
            Comm.CommandText = "update grade set 数学=100 where 姓名 like '%齐%'";
            Comm.ExecuteNonQuery();
            Comm.CommandText = "update grade set 数学=60 where 姓名 like '%张%'";
            Comm.ExecuteNonQuery();
            Trans.Commit();
            Response.Write("事务执行成功!");
        }
        catch (Exception ex)
        {
            Trans.Rollback();
            Response.Write("出现错误,事务已经回滚!");
        }
        finally
        {
            Conn.Close();
        }
    }

 

posted @ 2010-08-25 23:51  aito  阅读(516)  评论(1编辑  收藏  举报