zoukankan      html  css  js  c++  java
  • 事务

    属性:

    1.原子性:事务是一个完整的操作,事务的各元素师不可分的。

    2.一致性:事务开始时和完成时,数据必须处于一致的状态。

    3.隔离性:对数据进行修改的所有并发事务是彼此隔离的。

    4.持久性:事务完成后,它对系统的影响是永久的。

    ?

    Transact-SQL使用下列语句来管理事务:

    开始事务:BEGIN TRANSACTION

    提交事务:COMMIT TRANSACTION

    回滚:ROLLBACK TRANSACTION

       public bool SendMessage(Msg_InBoxMessageModel inmodel, Msg_OutBoxMessageModel outmodel, Msg_MessageModel model)

            {

                try

                {

                    using (SqlConnection conn = new SqlConnection(DBConnString))

                    {

                        conn.Open();

                        SqlTransaction trans = conn.BeginTransaction();

                        if (!Create(model, trans: trans))

                        {

                            trans.Rollback();

                            return false;

                        }

                        inmodel.MessageId = model.Id;

                        if (!DALControl.Msg_InBoxMessageDAL.Create(inmodel, trans: trans))

                        {

                            trans.Rollback();

                            return false;

                        }

                        outmodel.MessageId = model.Id;

                        if (!DALControl.Msg_OutBoxMessageDAL.Create(outmodel, trans: trans))

                        {

                            trans.Rollback();

                            return false;

                        }

     

                        trans.Commit();

                    }

                    return true;

                }

                catch (Exception ex)

                {

                    log.Error(ex.Message, ex);

                    return false;

                }

     

            }

    两个数据库连接可以用同一个事务

    1.
    事务开始
    update db1.tb1 --成功
    update db2.tb2 --成功
    事务提交
    2.
    update db1.tb1 --成功
    update db2.tb2 --失败
    db1的操作回滚,不更新
    3.
    update db1.tb1 --失败
    update db2.tb2 --不操作
  • 相关阅读:
    Pathfinding 模板题 /// BFS oj21413
    poj2186-Popular Cows(强连通分支)
    求有向强连通分量 模板
    F. Relatively Prime Powers (求([2,n],内不是次方的数量)
    【2018沈阳赛区网络预选赛J题】Fantastic Graph 【有上下界的网络流】
    Zoj 2314 Reactor Cooling(无源汇有上下界可行流)
    有上下界网络流模板
    有上下界网络流建模方法
    有上下界的网络流问题 的理解分析
    ACM-ICPC 2018 沈阳赛区网络预赛 D. Made In Heaven(约束第K短路)
  • 原文地址:https://www.cnblogs.com/viaiu/p/4816768.html
Copyright © 2011-2022 走看看