mysql中的提交(commit)与回滚(rollback)

事务,是一系列操作的连锁。数据库在执行一个事务的时候,最后都会有一个提交或者回滚的操作。掌握好两者的区别和用法,可以让我们在编写程序的过程中更加高效的实现自己的需求。以下是自己根据廖雪峰老师blog总结的二者用法:

提交(commit)

事务的提交(commit)指的是把经过一系列操作后发生了修改了数据写入数据库中,注意,已提交的事务不能rollback。

COMMIT; --提交事务

回滚(rollback)

事务的回滚(rollback)指的是撤销对数据库的更新操作。

ROLLBACK TO <保存点名称>; --撤销单个事务
ROLLBACK; --撤销全部事务
ROLLBACK FORCE '11,22,33'; --强制回滚到由事务ID'11,22,33'标识的事务

回滚点(savepoint)

如果在回滚时想要撤回到某一特定的点,可以预先设置一个保存点。

BEGIN
  UPDATE table1 SET column1 = 'cs' WHERE id=1;
  SAVEPOINT p1; --这是回滚点1
  DELETE FROM table1;
  ROLLBACK TO SAVEPOINT p1; --撤销删除这一操作
END

小白持续学习中,关于自治事务等会在学习后继续更新……

你可能感兴趣的:(mysql,mysql)