zoukankan      html  css  js  c++  java
  • SQL自动事务、隐藏事务、显式事务,以及.net中的关于事务

    http://www.cnblogs.com/procoder/archive/2009/10/06/1578346.html
    参考:

    SQL Server 2008 的事务类型

    1.自动提交事务 Autocommit Transactions

    这是SQL Server默认的事务类型,每一条单独的SQL语句(SQL statement)都是单独的一个事务,语句执行完毕后自动提交。调用方不需要手工控制事务流程。

    2.显示事务 Explicit Transactions

    调用方需要调用API或者使用T-SQL的BEGIN TRANSACTION 语句来打开事务。需要调用COMMIT 或者 ROLLBACK TRANSACTION 来提交或者回滚。

    3.隐式事务 Implicit Transactions

    使用SET IMPLICIT_TRANSACTIONS ON把事务模式变成隐式模式。调用方不需要执行BEGIN TRANSACTION 语句来打开事务。数据库引擎执行到SQL语句的时候自动打开事务。调用方需要调用COMMIT 或者 ROLLBACK TRANSACTION 来提交或者回滚。当数据库引擎执行下一个SQL语句时又自动打开一个新事务。

    参考:Controlling Transactions (Database Engine)

    PB:中autocommit设置成false是时启动的Emplicit Transactions事务,一个事务接着一个事务形成事务链(可以通过sql profiler看到IMPLICIT_TRANSACTIONS ON设置).

    .Net中所谓的隐式事务(TransactionScope) 显示事务(CommittableTransaction),跟上面SQL2008的事务讲的是不同的概念,因为通过sql profiler只看到如下设置:

    -- network protocol: LPC
    set quoted_identifier on
    set arithabort off
    set numeric_roundabort off
    set ansi_warnings on
    set ansi_padding on
    set ansi_nulls on
    set concat_null_yields_null on
    set cursor_close_on_commit off
    set implicit_transactions off
    set language 简体中文
    set dateformat ymd
    set datefirst 7
    set transaction isolation level read committed 

  • 相关阅读:
    js数组
    js字符串和控制语句
    生成器、列表解析
    js属性
    js函数
    js变量
    python抽象方法
    python 装饰器的缺点以及解决方法
    windows文件关联、打开方式列表之修改注册表攻略
    JavaScript定时器及其他
  • 原文地址:https://www.cnblogs.com/wdfrog/p/2242498.html
Copyright © 2011-2022 走看看