数据库回滚(rollback)和撤销(undo)的区别

数据库回滚(rollback)和撤销(undo)的区别就是把某一个数据库操作恢复到该操作之前的状态,下面结合自己理解总结一下区别,如有错误,欢迎各路大佬斧正:

数据库事务过程:执行SQL——提交

回滚:即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,滚回到事务开始时的状态。(在提交之前执行)

  执行SQL—(rollback)—提交

撤销:在不影响其他事务运行的情况下,强行回滚该事务,撤销该事务已经做出的任何对数据库的修改。(在提交之后执行)

  执行SQL——提交——(undo)

二者主要区别在于事务执行的状态,回滚是在事务未全部完成即在事务中发生的,撤销是在该事务已经执行完成后发生的,二者都是为解决事务故障而存在的一种安全机制。
原文地址:https://www.cnblogs.com/lingege/p/12674816.html