MySQL数据库 事务&索引 简要解析

1.事务

1.1 含义

一条或多条sql语句组成一个执行单位,一组sql语句要么都执行要么都不执行

1.2 特点(ACID)

  1. 原子性:不可分割的操作单元,事务中所有操作,要么全部成功;要么撤回到执行事务之前的状态
  2. 一致性:一个事务的执行不能破坏数据库数据的完整性和一致性,如果在执行事务之前数据库是一致的,那么在执行事务之后数据库也还是一致的
  3. 隔离性:一个事务不受其它事务的干扰,多个事务是互相隔离的,事务操作之间彼此独立和透明互不影响。事务独立运行。这通常使用锁来实现。一个事务处理后的结果,影响了其他事务,那么其他事务会撤回。事务的100%隔离,需要牺牲速度
  4. 持久性:一个事务一旦提交了,则永久的持久化到本地,其结果就是永久的。即便发生系统故障,也能恢复

1.3 分类

  1. 隐式事务:没有明显的开启和结束,本身就是一条事务可以自动提交,比如insert、update、delete
  2. 显式事务:具有明显的开启和结束,例如以下格式:
1、开启事务
set autocommit=0;#关闭自动提交
start transaction;#开启事务机制

2、编写一组逻辑sql语句
注意:sql语句支持的是insertupdatedelete

【设置回滚点,可选项】
savepoint 回滚点名;

3、结束事务
提交:commit;
回滚:rollback;
回滚到指定的地方: rollback to 回滚点名;

2. 事务并发(读问题)

2.1 事务的并发问题如何发生?

多个事务同时操作同一个数据库的相同数据时

2.2 事务的并发问题都有哪些

  1. 脏读:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值