oracle事务_笔记1:事务级原子性
事务级原子性
事务(也就是一组SQL语句作为一个工作单元一同执行)的总目标是把数据库从一种一致状态转变为另一种一致状态。
为了实现这个目标,事务也是原子性的,事务完成的所有工作要么完全提交并成为永久性的,要么会回滚并撤销。像语句一样,事务是一个原子性的工作单元。提交一个事务后,接收到数据库返回的“成功”消息后,就能知道事务完成的所有工作都已经成为永久性的。
DDL与原子性
Oracle中有一类语句具有原子性,不过只是在语句级保证原子性。数据定义语句(Data Definition Language,DDL)语句采用了一种特定的实现方式,可以完成如下工作。
(1)提交所有未完成的工作,结束当前已有的所有事务
(2)完成DDL操作,如CREATE TABLE
(3)如果DDL操作成功则提交,否则回滚DDL操作。
只要发出CREATE、ALTER等DDL语句,就可以将现有的事务立即提交,并完成后面的DDL命令,这些DDL命令可能提交从而得到持久结果,也可能因出现错误而回滚。尽管DDL并不违反ACID概念,但DDL语句会提交的这一点确实需要注意。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/5234.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
