数据库学习之事务控制

事务概述:
1、事务是数据库并发控制恢复技术的基本单位;
2、事务具有四个特性,分别是:原子性,一致性,隔离性,持久性;
3、事务是一些数据库操作的集合,由一组相关的SQL语句组成;
Oracle事务的隔离级别:
Oracle数据库为事务提供了两个级别的隔离。
1、read commited:
(1)每个事务所执行的查询操作只能获取在该查询开始之前(不是该事务开始之前)已经提交的数据。
(2)可以防止丢失修改和脏读的问题,但是不能防止不可重复读的问题。
(3)若数据被加锁则等待其他事务解锁;
2、serializable:
(1)每个事务只能看到在该事务开始之前已经提交的数据;
(2)可以防止丢失修改,脏读和不可重复读的问题;
(3)若数据被加锁,则不等待,返回错误;
3、read-only:
(1)每个事务只能够看到在该事务开始之前已经提交的数据,而且不能够对该事务中的数据进行增删改操作;
具体怎么修改事务的隔离级别,可以在参考手册上查询;

Oracle事务处理:
在Oracle数据库中,事务提交有两种方式:
一种方式是用户执行commit命令;
另一种方式是执行特定操作时系统自动提交:
当执行create,alter,drop,rename,revoke,grant,connect,disconnect等命令时,系统将自动提交。
事务回滚:
如果只想取消事务中的部分操作,而不是取消全部操作,则可以在事务内部设置保存点,将一个大的事务划分为若干个组成部分,这样就可以将事务回滚到指定的保存点。
可以使用savepoint语句设置保存点

你可能感兴趣的:(数据库)