日期:2014-05-16 浏览次数:20435 次
?
1 、事务概念:
? 概念:在数据库中事务是工作的逻辑单元 , 一个事务是由一个或多个完成一组的相关行为的 SQL 语句组成 , 通过事务机制确保这一组 SQL 语句所作的操作要么完全成功执行 , 完成整个工作单元操作 , 要么一点也不执行。
?
? ? 主要特性:确保数据库的完整性。
?
2 、事务的 ACID 特性
? 对一组 SQL 语句操作构成事务 , 数据库操作系统必须确保这些操作的原子性 , 一致性 , 隔离性 , 持久性 .
1、? 原子性 (Atomicity)????
??? 事务的原子性是指事务中包含的所有操作要么全做,要么不做 , 也就是说所有的活动在数据库中要么全部反映 , 要么全部不反映 , 以保证数据库的一致性。
2、? 一致性 (Consistency)
??? 事务的一致性是指数据库在事务操作前和事务处理后 , 其中数据必须满足业务的规则约束。
3、? 隔离性 (Isolation)
?? 隔离性是指数据库允许多个并发的事务同时对其中的数据进行读写或修改的能力 , 隔离性可以防止多个事务的并发执行时 , 由于它们的操作命令交叉执行而导致数据的不一致性。
4、? 持久性 (durability)
??? 事务的持久性是指在事务处理结束后 , 它对数据的修改应该是永久的。即便是系统在遇到故障的情况下也不会丢失 , 这是数据的重要性决定的。
?
?
?
3 、事务的控制语句
?? 在 oracle 数据库中 , 没有提供开始事务处理语句 , 所有的事务都是隐式开始的 , 也就是说在 oracle 中 , 用户不可以显示使用命令来开始一个事务 .oracle 任务第一条修改数据库的语句 , 或者一些要求事务处理的场合都是事务的隐式开始。但是当用户想要终止一个事务处理时 , 必须显示使用 commit 和 rollback 语句结束。
? 根据事务 ACID 属性 ,oracle 提供了如下的事务控制语句:
?? Set transaction 设置事物属性
?? Set constrains? 设置事物的约束模式
?? 约束模式是指:在事务中修改数据时 , 数据库中的约束立即应用于数据 , 还是将约束推迟到当前事务结束后应用。
?? Savepoint 在事务中建立一个存储的点 . 当事务处理发生异常而回滚事务时 , 可指定事务回滚到某存储点 . 然后从该存储点重新执行。
?? Release?