数据库的事务

本文详细介绍了数据库事务的概念,包括隐式和显示事务的分类,事务的ACID特性,并深入探讨了并发环境下事务存在的问题及通过提高隔离级别来解决的办法。还列举了各数据库支持的隔离级别。
摘要由CSDN通过智能技术生成

目录

一、事务的定义

二、事务的分类

(1)隐式事务

(2)显示事务

1.开启事务

2.执行事务

3.设置保存点

4.回滚到保存点

5.结束事务

三、事务的特点

(1)例子

(2)ACID特性

四、事务存在的问题和解决办法

(1)存在并发问题

(2)解决办法

1.解决办法—提高隔离级别

2.隔离级别分类

1)读未提交

2)读已提交

3)可重复读

4)串行化

3.查看、设置隔离级别

4.各个数据库支持的隔离级别


一、事务的定义

访问、操作数据库数据的行为

二、事务的分类

分为隐式事务、显示事务

(1)隐式事务

没有明显的开启和结束的标记,比如

【DDL】CREAE、DROP、ALTER;

【DCL】GRANT、REVOKE;

【DQL和DML】select、insert、update、delete

语句执行时默认就是一条事务

(2)显示事务

具有明显的开启和结束的标记,比如需要2条update语句合并为一个事务的时候,就需要把这2条sql设置为一个显示事务

//需要注意的是开启显示事务的前提是要设置自动提交功能为禁用(sql语句:set autocommit=0;)

设置显示事务步骤:

1.开启事务

set autocommit=0;//关闭自动提交

show variable like 'autocommit'; //查看自动提交是否关闭

  • mysql语法:

start transaction;

  • sqlserver语法:

begin transaction;

2.执行事务

【DDL、DCL、DQL、DML】sql语句  

3.设置保存点

savepoint 保存点名字

4.回滚到保存点

rollback to 保存点;

5.结束事务

commit;  //提交事务

或者

rollback;  //回滚事务并结束

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值