SQL 学习笔记:事务 TRANSACTION(事务)

一、事务 语法

-- Oracle: 自动开启
COMMIT;   -- 提交
ROLLBACK; -- 回退
SAVEPOINT sp; -- 保存点
-- MySQL(InnoDB):
START TRANSACTION; ... COMMIT;

二、参数说明

项目说明
COMMIT提交事务,使更改永久生效
ROLLBACK回滚到事务开始或指定保存点
SAVEPOINT在事务内打标记,可局部回滚
ACID原子性/一致性/隔离性/持久性

三、注意事项

  • Oracle 执行第一条 DML 即隐式开启事务;MySQL 需 START TRANSACTION(InnoDB)
  • 只有 InnoDB 等事务引擎支持;MyISAM 不支持事务
  • 异常时应 ROLLBACK,避免脏数据;COMMIT 后不可回退

四、经典案例

案例1:转账提交

转账提交

案例2:出错回滚

出错回滚

案例3:保存点局部回滚

保存点局部回滚

五、小结

事务 TRANSACTION是数据库操作中的基础而关键的用法,建议结合文中的示例表在 Oracle 与 MySQL 中分别动手验证,注意两者在自增、分页、正则等处的语法差异,做到融会贯通。

💬 0 评论

评论(0)

登录后发表评论。