码迷,mamicode.com
首页 > Web开发 > 详细

Ado.Net事物处理

时间:2016-11-13 16:45:42      阅读:277      评论:0      收藏:0      [点我收藏+]

标签:res   man   cte   textbox   .text   sql命令   lex   connect   query   

protected void Button2_Click(object sender, EventArgs e)

    {
        SqlConnection con = new SqlConnection(@"Data Source=.SQLEXPRESS;database=aaaa;uid=sa;pwd=jcx");
        con.Open();
        //先实例SqlTransaction类,使用这个事务使用的是con 这个连接,
        //使用BeginTransaction这个方法来开始执行这个事务
        SqlTransaction tran = con.BeginTransaction(); 
        SqlCommand cmd = new SqlCommand();
        cmd.Connection = con;
        cmd.Transaction = tran;
        try
        {
             //在try{} 块里执行sqlcommand命令,
            cmd.CommandText = "update bb set moneys=moneys-‘" + Convert.ToInt32(TextBox1.Text) + "‘ where ID=‘1‘";
            cmd.ExecuteNonQuery();
            cmd.CommandText = "update bb set moneys=moneys+‘ aa ‘ where ID=‘2‘";
            cmd.ExecuteNonQuery();
            tran.Commit();//如果两个sql命令都执行成功,则执行commit这个方法,执行这些操作
             Label1.Text = "添加成功";
        }
        catch
        {
            Label1.Text = "添加失败";
            tran.Rollback();//如何执行不成功,发生异常,则执行rollback方法,回滚到事务操作开始之前;
        }
 
    }

Ado.Net事物处理

标签:res   man   cte   textbox   .text   sql命令   lex   connect   query   

原文地址:http://www.cnblogs.com/jf-guo/p/6058666.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!