2025年事务(Transaction)

事务(Transaction)事务 transaction 事务

一、事务是什么

1.定义:

事务(Transaction),就是将一组SQL语句放在同一批次内去执行,如果一个SQL语句出错,则该批次内 的所有SQL都将被取消执行。

2.特点:

一个事务中如果有一个数据库操作失败,那么整个 事务的所有数据库操作都会失败,数据库数据就会 回滚到该事务开始之前的状态。

3.限制 :

MySQL数据库中仅InnoDB和BDB类型的数据库表 支持事务。

二、为什么需要事务

在操作数据的时候,可能遇到多个线程同时操作数据的问题,也可能遇到突然数据库故障了的问题,这些都可能造成数据的不一致。所以事务要保证的就是一致性。

三、事务的ACID原则

原子性 :(Atomic )数据库中的 事务执行是作为原 子粒度。不可再 分,整个语句要么 执行,要么不执行 一致性 :(Consist )即在事务开始之前和 事务结束以后,数据 库的完整性约束没有 被破坏。 隔离性 :(Isolated )事务的执行互不 干扰,事务 不可能看到其他事 务运行时,中间某 一时刻的数据。 持久性 :(Durable )事务完成后 ,事务所对数据库所 作的更改便持久保存 在数据库中,不会 被回滚。

四、MySQL实现事务的方法

START TRANSACTION:开始一个事务,标记事务的起始点。

SET AUTOCOMMIT :改变自动提交模式,为0时关闭自动提交模式,为1时开启自动提交模式。默认为1,使用事务时为0。

COMMIT:提交一个事务给数据库。

ROLLBACK:将事务回滚,数据回到本次事务的初始状态。

五、MySQL实现事务的步骤

六、事务的隔离级别

1. READ_UNCOMMITTED 读未提交 2. READ_COMMITTED 读提交(不可重复读) 3. REPEATABLE_READ 可重复读 4. SERIALIZABLE 串行化

编程小号
上一篇 2025-01-06 07:01
下一篇 2025-03-23 14:17

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/103614.html