zoukankan      html  css  js  c++  java
  • .net中使用mysql回滚和sqlserver回滚的区别

    关于sqlserver事务和mysql事务

    首先这是一种方法 

    public static int GetExecteQuery()
            {
                SqlConnection conn = new SqlConnection(CONN_STRING);//在这里CONN_STRING也就是连接sqlserver数据库的语句
                conn.Open();//打开
                SqlCommand command = conn.CreateCommand();//在这里也可以写成SqlCommand command=new SqlCommand();

                SqlTransaction transaction = null;
                transaction = conn.BeginTransaction(); //这两句也可以写成  SqlTransaction transaction =new SqlTransaction();
                command.Connection = conn;              
                command.Transaction = transaction;
                int count = 0;

                try
                {
                    command.CommandText = "insert into company values('AA','AAAA','true','null')";
                    command.ExecuteNonQuery();
                    command.CommandText = "insert into company values('AA','AAAA','tru1e','null')";
                    count = command.ExecuteNonQuery();
                    transaction.Commit(); //进行执行
                }
                catch
                {

                    transaction.Rollback();//发生异常进行回滚
                }

                return count;
            }

              

               关于mysql

              MySqlCommand mySqlCmd = new MySqlCommand();
                MySqlConnection mySqlConn = new MySqlConnection(connStr);
                try
                {
                    if (mySqlConn != null && mySqlConn.State == System.Data.ConnectionState.Closed)
                    {
                        mySqlConn.Open();
                    }
                    mySqlCmd.Connection = mySqlConn;
                    mySqlCmd.Transaction = mySqlConn.BeginTransaction();
                    mySqlCmd.CommandType = System.Data.CommandType.Text;
                    for (int i = 0; i < sqls.Count; i++)
                    {
                        mySqlCmd.CommandText = sqls[i].ToString();
                        mySqlCmd.ExecuteNonQuery();
                    }
                    mySqlCmd.Transaction.Commit();
                    return true;
                }
                catch (Exception)
                {
                    mySqlCmd.Transaction.Rollback();
                    throw;
                }
                finally
                {
                    this.CloseConn();
                }                              

  • 相关阅读:
    #一周五# (视频) 手掌四轴Estes 4606,树莓派2和WRTNode,WinHEC 2015深圳
    Android 自定义标题栏
    (视频)《快速创建网站》 4.1 为啥造软件不同于造汽车,为啥是软件就一定会有Bug - 构建开发运维一体化(DevOps)
    (视频) 《快速创建网站》3.4 网站改版3分钟搞定 - WordPress主题安装和备份
    OpenCV由汉字生成图片(透明)----可以对抗论文查重!!!
    Codeforces Round #295 (Div. 2)
    Codeforces Round #294 (Div. 2)
    Codeforces Round #293 (Div. 2)
    Codeforces Round #292 (Div. 2)
    暴力/set Codeforces Round #291 (Div. 2) C. Watto and Mechanism
  • 原文地址:https://www.cnblogs.com/sdya/p/3937735.html
Copyright © 2011-2022 走看看