资讯详情

mysql-DTL语言

事务

含义

一组逻辑操作单元(一组逻辑操作单元)DML——sql语句)将数据从一种状态切换到另一种状态

特点(ACID)

  • 原子性(A):要么全部执行,要么全部回滚
  • 一致性:确保数据运行前后的一致性
  • 隔离性(I):当多个事务同时操作同一数据库的同一数据时,一个事务的执行不受另一个事务的干扰
  • 持久性(D):一旦提交事务,除非其他事务修改,否则数据将持续到本地。

事务的分类

  • 隐式事务:

没有明显的和结束没有明显的标志 比如: insert、update、delete语句本身就是一件事

  • 显式事务:

具有明显开启和结束事务的标志 1、开启事务 取消自动提交事务的功能 2.一组编写事务的逻辑操作单元(多个)sql语句) insert update delete 3.提交事务或回滚事务

事务隔离等级

并发问题
  • 脏读:一个事务读取另一个事务未提交的数据
  • 不要重复:在同一事务中,多次读取的数据不一致
  • 幻读:当一个事务读取数据时,另一个事务更新,导致第一个事务读取未更新的数据
mysql事务隔离等级(默认可重复)
隔离级别 脏读(Dirty Read) 不可重复读(NonRepeatable Read) 幻读(Phantom Read)
未提交读(Read uncommitted) 可能 可能 可能
已提交读(Read committed) 不可能 可能 可能
可重复读(Repeatable read) 不可能 不可能 可能
可串行化(Serializable ) 不可能 不可能 不可能

事务控制语句

设置是否自动提交事务
# 禁止自动提交事务 SET AUTOCOMMIT=0 # 开始自动提交 SET AUTOCOMMIT=1 
检查隔离等级
# 查看当前会话隔离级别 select @@tx_isolation; # 检查系统当前的隔离级别 select @@global.tx_isolation; 
设置隔离等级
# 设置当前会话隔离等级 set session transaction isolatin level repeatable read; # 设置当前隔离级别的系统 set global transaction isolation level repeatable read; 
显示开启事务
BEGIN # 或者 START TRANSACTION 
在一个事务中可以创建多个保存点
SAVEPOINT 保存点名称 
删除事务保存点
RELEASE SAVEPOINT 保存点名称 
回滚到事务保存点
ROLLBACK TO 保存点名称 
回滚整个事务
ROLLBACK # 或者 ROLLBACK WORK 
提交事务
COMMIT # 或者 COMMIT WORK 

标签: 铜铝电缆连接端子dtl

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

 锐单商城 - 一站式电子元器件采购平台  

 深圳锐单电子有限公司