【Java-MySQL】什么是事务?

什么是事务?

事务是数据库操作的最小逻辑单元,将多个操作(如增删改查)封装为一个不可分割的整体。例如银行转账(扣A账户余额、加B账户余额)必须作为一个整体执行,要么全部成功,要么全部失败。
在这里插入图片描述


事务的四大特性(ACID)

  1. 原子性(Atomicity)
    事务内的所有操作要么全部成功,要么全部失败回滚。例如转账时,若扣款成功但加款失败,则整个操作回滚,双方余额不变。
  2. 一致性(Consistency)
    事务执行前后,数据库必须保持业务规则的一致性。例如转账前后,A+B的总金额应保持不变。
  3. 隔离性(Isolation)
    多个并发事务互不干扰,防止数据混乱。例如两个转账事务同时操作同一账户时,通过锁或MVCC机制保证结果正确。
  4. 持久性(Durability)
    事务提交后,数据永久保存(即使系统崩溃)。例如通过日志(Redo Log)恢复机制确保数据不丢失。

注意事项

  • 引擎支持:MySQL的InnoDB引擎支持事务,而MyISAM不支持。
  • 默认隔离级别:MySQL默认是可重复读(Repeatable Read),能避免脏读和不可重复读。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值