• 数据访问——关于事务


    事务——transaction ,它有一个典型的特点:ACID

    A——原子性:事务是一个整体,不能再拆分,要么都执行要么都不执行;

    C——一致性:事务执行之前和执行之后的数据要一致;

    I——隔离性:事务在执行过程中,所有与事务相关的对象都不能再执行其他的操作(相当于被隔离起来)

    D——持久性:事务在遇到某种特殊情况导致操作未执行完的时候,数据会回滚到最初状态

    事务分为两类:

    一,链接内事务:在链接打开后,使用事务控制多条语句的执行

    1,创建事务对象

    SqlTransaction trans=conn.BeginTransaction();  //注意必须是链接打开后编写

    2,把事务对象挂到命令对象上,让命令执行带有事务的功能

    cmd.Transaction=trans;

    3,执行CommandText命令操作数据库

    (1)成功后调用事务对象的Commit()方法来提交执行的结果。

    (2)失败后调用事务对象的Rollback()方法来回滚执行前的状态。

     二,跨链接的事务:TransactionScope对象

    使用该类事务的步骤:

    1,启动服务:DTC 分步式事务协调器

    2,引用事务程序集,在解决方案管理器的引用中,右键添加引用:system.Transactions

    3,使用using system.Transactions 把命名空间导进来

    4,使用TransactionScope类来控制事务。

    using (TransactionScope ts = new TransactionScope())
    {
    DeleteWork("p001");
    DeleteFamily("p001");
    DeleteInfo("p001");
    ts.Complete(); //必须。它是用来提交事务的。
    }

  • 相关阅读:
    Unstar A File:
    star 一个文件
    列出大星号文件
    删除用户
    curl -d
    创建用户
    Check Account Info
    List Accounts
    认证ping
    python 解接口返回的json字符串
  • 原文地址:https://www.cnblogs.com/William-1234/p/4489369.html
Copyright © 2020-2023  润新知