C# mysql 处理 事务 回滚 提交

        MySqlConnection myCon;
        void iniMysql()
        {
            //连接数据库    
            myCon = new MySqlConnection("server=127.0.0.1;username=zpcmysql;password=zpc;database=test;SslMode=none;charset=utf8;");
            if (!myCon.Ping())
            {
                myCon.Open();
            }
            //
            MySqlCommand cmd = myCon.CreateCommand();
            //创建事务 并且启动
            MySqlTransaction transaction = myCon.BeginTransaction();

            cmd.Transaction = transaction;
            try
            {
                cmd.CommandText = "INSERT INTO table1(id,name) VALUES(1,'张三')";
                int x = cmd.ExecuteNonQuery();
                cmd.CommandText = "INSERT INTO table1(name) VALUES('李四')";
                int y = cmd.ExecuteNonQuery();

                //没有异常则正常提交事务 更改表格
                transaction.Commit();
            }
            catch (Exception ex)
            {
                //如果遇到错误 或者 影响表为0 则回滚事务
                transaction.Rollback();
            }
            
        }

 C# 处理事务需要 通过 MySqlTransaction 类去实现  此类不可被继承

   Commit() 提交事务
   Rollback()回滚事务
   Connection 获取 连接的MySqlConnection对象

  需要注意提交和回滚只能调用一次,否则会报错。同理MySQL语句

转载于:https://www.cnblogs.com/z45281625/p/10834877.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值