ホームページ  >  記事  >  データベース  >  Oracle中的事务之savepoint

Oracle中的事务之savepoint

WBOY
WBOYオリジナル
2016-06-07 17:25:08906ブラウズ

保存点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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。