Home  >  Article  >  Database  >  Oracle中的事务之savepoint

Oracle中的事务之savepoint

WBOY
WBOYOriginal
2016-06-07 17:25:08904browse

保存点savepoint是事务中的一点,通过rollback可以返回到某个保存点。一个事务中可以有多个保存点。一旦事务提交,该事务中的保存

一、基本概念

保存点savepoint是事务中的一点,通过rollback可以返回到某个保存点。一个事务中可以有多个保存点。一旦事务提交,该事务中的保存点会自动被删除,,那么无论刚才做了多少个保存点,都统统没有了。

SQL> savepoint sp;
 
Savepoint created
 
SQL> delete from mytable;
 
15 rows deleted
 
SQL> rollback to sp;
 
Rollback complete
 
SQL> select count(*) from mytable;
 
  COUNT(*)
----------
        15

删除操作就被回退了。

二、详解

事务的几个重要操作
1 设置保存点 savepoint a
2 取消部分事务 rollback to a
3 取消全部事务 rollback
若执行SQL> commit;提交操作,则该事务中所有保存点都不存在了。如果没有手动执行commit而是exit会自动提交。

参考自韩顺平老师的《玩转Oracle》视频

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn