Mysql手动事务知识点

本文详细介绍了数据库事务的概念,包括原子性、一致性、隔离性和持久性,以及如何通过SQL语句手动管理事务,如starttransaction、commit、rollback和设置回滚点。同时涵盖了MySQL的四种隔离级别及其影响。此外,还总结了MySQL数据库的基本操作,如建库建表、多表查询和子查询的使用。
摘要由CSDN通过智能技术生成

@Transactional

代码的事务注解

原子性(Atomicity

每个事务都是一个整体,不可再拆分,事务中所有的SQL 语句要么都执行成功,

要么都失败。

一致性(Consistency

事务在执行前数据库的状态与执行后数据库的状态保持一致。如:转账前2 个人的

总金额是2000,转账后2 个人总金额也是2000

隔离性(Isolation

事务与事务之间不应该相互影响,执行时保持隔离的状态。

持久性(Durability

一旦事务执行成功,对数据库的修改是持久的。就算关机,也是保存下来的。

手动提交事务的SQL语句

start transaction 开始事务的sql语句

commit 提交事务的sql语句

rollback 回滚事务的sql语句

手动提交事务

提交事务 ——> 执行sql语句 ——> 成功提交事务

提交事务 ——> 执行sql语句 ——> 失败回滚事务

回滚点

设置回滚点的sql语句 savepoint 名字

回到回滚点的sql语句 rollback to 名字

事务的隔离级别

脏读

一个事务读取到了另一个事务中尚未提交的数据

不可重复读

一个事务中两次读取的数据内容不一致,要求的是一个事务中多次读取时数据是一致的,这

是事务update 时引发的问题

幻读

一个事务中两次读取的数据的数量不一致,要求在一个事务多次读取的数据的数量是一致

的,这是insert delete 时引发的问题

MySQL 数据库有四种隔离级别

上面的级别最低,下面的级别最高。“是”表示会出现这种问题,“否”表示不会出现这种问题。

级别 名字 隔离级别 脏读 不可重复读 幻读 数据库默认隔离级别

1

读未提交

read uncommitted

2

读已提交

read committed

Oracle SQL Server

3

可重复读

repeatable read

MySQL

4

串行化

serializable

mysql数据库结课总结

共有5大项

1,建库建表--字符集,排序,id,自增长

2,单表操作--增删改查 select INSERT UPDATE DELETE

3,多表查询--left joinRIGHT JOIN INNER JOIN

4,子查询 :

单行单列 : select * from 表名 where 查询条件 (select 条件数据名 from 表名);

单行多列 : select * from 表名 WHERE 查询条件 in (select 条件数据名 from 表名 where 查询条件);

多行多列(建立空间表) :select * from 查询字段 (select 条件数据名 from 表名 where 查询条件) 表名 where 查询条件

5,聚合函数。

一,子查询结果只要是单列,则在WHERE 后面作为条件

二,子查询结果只要是多列,则在FROM 后面作为表进行二次查询

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值