转贴:PLSQL中 commit 和 rollback 的区别

PLSQL中 commit 和 rollback 的区别

原文链接:https://blog.csdn.net/jerrytomcat/article/details/82250915

一. commit(提交)
作用:commit即提交,表示这个事务的所有操作都执行成功,commit告诉系统,数据库要进入一个新的正确状态,该事务对数据库的所有更新都要确保不因数据库的宕机而丢失。

提交数据有三种类型:显式提交、隐式提交及自动提交(一般不需要),所以这里就列举了前两个,如下:

  (1) 显式提交
需要点击commit命令完成的提交为显式提交。这些常用的命令有:

           insert,delete,update

  (2) 隐式提交
用SQL命令间接完成的提交为隐式提交(不需点击,自动提交)。这些常用的命令有:

create,drop,alter,grant,revoke,truncate, quit

二. rollback(回滚)
作用:ROLLBACK即回退或回滚,表示事务中有执行失败的操作,这些操作必须被撤销,ROLLBACK告诉系统,已发生错误,数据库可能处在不正确的状态,该事务对数据库的部分或所有更新必须被撤销。

三. 注意点
当执行完DML语句后,处理的一些数据都会放在回滚段中,就等待用户执行commit和rollback,当执行完commit和rollback后,回滚段中的数据就会被删除。

DDL是隐性提交的,不能回滚。而最常用的DML语言(update,delete,insert)是需要进行显示提交的,也就是说需要手动地去commit。
————————————————
版权声明:本文为CSDN博主「IT界一股清流」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jerrytomcat/article/details/82250915

原文地址:https://www.cnblogs.com/heyang78/p/11756660.html