内容正文:
壹
零
陣
矩
誰
敢
爭
鋒
好
学
的
不
像
实
力
派
R&D incubation -
Base
数据库控制
千锋教研院·索尔
The Best R&D Courses
The Best R&D Courses
1.原子性 Atomicity
2.一致性 Consistency
3.隔离性 Isolation
4.持久性 Durability
事务的特性
The Best R&D Courses
在执行提交操作之前,操作的数据并不会持久保存到数据库中。
事务的提交方式有三种:
• 显示提交:使用commit命令使当前事务立即生效。
• 自动提交:执行”set autocommit on“命令
• 隐式提交:如果发生DDL命令、程序中断或关闭会话、关闭数据库等操作,则会也会完成一次事
务提交。
提交事务
The Best R&D Courses
回滚事务(rollback操作)。在执行提交操作之前,oracle会在重做日志中记录数据所做的修改。通
过事务回滚操作,让数据恢复到修改之前的状态。事务回滚需要经过以下过程:
1. 使用回退段中的数据,撤销对数据库所做的修改
2. Oracle释放事务所使用的系统资源
3. 通知用户事务回退成功
回滚事务
The Best R&D Courses
回滚事务(rollback操作)。在执行提交操作之前,oracle会在重做日志中记录数据所做的修改。通
过事务回滚操作,让数据恢复到修改之前的状态。事务回滚需要经过以下过程:
1. 使用回退段中的数据,撤销对数据库所做的修改
2. Oracle释放事务所使用的系统资源
3. 通知用户事务回退成功
回滚事务
The Best R&D Courses
oracle有两种锁机制:
1.共享锁:通过数据存取的高并行性来实现。如果获得一个共享锁,用户就可以共享相同的资源。共
享锁使用在读取数据的维度。
2.独占锁。防止共同改变相同的资源。如果一个事务获得一个独占锁。那么只能当前事务进行修改数
据。其他不能修改数据,但可以读取数据。
锁机制
The Best R&D Courses
• 当两个或多个用户等待其中一个被锁住的资源时,就有可能发生死锁现象。
• oracle会自动进行定期搜索,通过回滚死锁中造成死锁的一个语句来解决死锁。
• 用户在设计应用程序时要尽量避免死锁。
死锁
The Best R&D Courses
设置回退点: savepoint sp1;
回滚到回退点: rollback to sp1;
事务回退点