知识大全 事务(2)
Posted 语句
篇首语:一知半解的人,多不谦虚;见多识广有本领的人,一定谦虚。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 事务(2)相关的知识,希望对你有一定的参考价值。
SQL实战新手入门:事务(2) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
事务( )
提交事务
MIT语句的功能是结束当前事务 并使在事务期间对数据的所有修改永久保存在数据库中 对于原生支持事务的所有RDBMS 提交事务的语法实际上都是相同的 这也是SQL的标准 提交事务的语法非常简单
MIT [WORK]
尽管加上WORK这个关键字可以使语法更清晰 但它并不是必需的 一个简单的MIT语句就可以完成提交事务的工作
某些RDBMS在MIT语句中添加了大量的附加选项 例如 一个Oracle g/ g语法的简单MIT语句如下所示
MIT [WORK] [MENT (<text>)[WRITE]] [FORCE (<text>) [<int>]] ;
可以使用MENT子句声明一个注释(最大长度为 字节) 用于记录每一个悬而未决的事务 可以通过DBA _PC_PENDING目录视图来查看这些注释(关于系统目录 请参考本章随后的内容)
IBM DB 中用于控制事务的语句在语法上遵循SQL标准 在IBM的术语中 事务就是一个工作单元(unit of work UOW) 当对数据库发出SQL语句时 总是隐式地启动一个事务 发出语句时无需任何授权 事务持有的全部锁随后都会被释放 IBM DB 并不支持对事务命名
除了Microsoft SQL Server和PostgreSQL之外 对于本书讨论的每一种数据库 下面的语法都是有效的 之所以可以使用MIT提交事务 是因为对于这些RDBMS来说 事务是隐式启动的
UPDATE books
SET bk_price =
WHERE bk_id= ;
MIT;
只需MIT语句即可 其他的选项都是可选的 另外 也可以使用MIT WORK语句 该语法与MIT TRANSACTION的功能完全相同
数据库中的数据并不会发生任何改变 直到最后的MIT语句执行 因此就可以回滚事务 在提交事务的问题上 各个RDBMS之间存在着显著的差异 例如 在执行MIT命令时 Microsoft SQL Server 必须已经隐式或显式地启动一个事务 此时MIT才能够执行成功 否则如果没有启动事务 发出MIT命令就会产生一个错误
Server: Msg Level State Line
The MIT TRANSACTION request has no corresponding BEGIN TRANSACTION
None of the other databases would plain no matter how many times you execute
MIT (though some like PostgreSQL might warn you that there are no pending
transactions to mit)
Microsoft SQL Server 使用了自己的语法来提交事务 它不支持SQL标准的提交事务语法 Microsoft的语法允许提交命名事务 而SQL标准的语法不支持提交命名事务
MIT [ TRAN [ SACTION ] [<transaction name>]]
嵌套事务
对于嵌套事务来说 命名的事务显得特别方便 嵌套事务背后的思想就是在一个事务中又包含了另外一个事务 而该内部事务可能又包含了一个内部的事务(在每一种RDBMS实现中 对于事务可以嵌套多少级都有一定的限制) 每一个 子事务 都知道更高一级的 父事务 在本书讨论的数据库中 只有Microsoft SQL Server 和PostgreSQL这两种数据库对嵌套事务提供了内置的支持
只有显式事务才能进行嵌套 在Microsoft SQL Server 中 嵌套事务仅仅是为了提供代码的可读性 提交一个内部事务并不会真正提交任何数据 只有最外层的MIT语句才能向数据库实际提交修改 所有其他内部的事务的提交操作仅仅是对事务计数器进行递减 但是可以使用SAVEPOINT来回滚内部事务的修改
返回目录 SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
cha138/Article/program/SQL/201311/16449相关参考
.NetFramework2.0中的事务处理 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 事务
Hibernate基于JDBC的事务[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 这也就
JAVA设计模式之事务处理[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!importjava
Spring事务管理高级应用难点剖析(2) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 应用分
<aop:config> <!<aop:advisorid=userManagerTxad
会计事务所是干什么的?会计师事务所的职责一、审计业务1、年度会计报表审计、财务收支审计;2、厂长(经理)经济责任审计、承包经营者责任审计;3、企业解散、合并、破产审计、经济效益审计;4、专项经济项目审
行政管理工作包括行政事务管理、办公事务管理、人力资源管理三个方面
行政管理工作包括行政事务管理、办公事务管理、人力资源管理三个方面。_____答案:错误解析:企业行政管理广义上包括行政事务管理、办公事务管理、人力资源管理、财产会计管理四个方面。本题错误。
Spring声明式事务管理源码解读之事务提交 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 其实
Spring声明式事务管理源码解读之事务开始 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在s
有人说,工作的时候,我们要将重要事务放在主要位置。重要事务是必要条件,关系着一件事情成功与否。重要的事务没做好,一定不成
有人说,工作的时候,我们要将重要事务放在主要位置。重要事务是必要条件,关系着一件事情成功与否。重要的事务没做好,一定不成功。但是,细节也是很重要的,细节是成功的充分条件,同样也与一件事情成功与否相关。