事务与并发控制(数据库)

一.事务概念理解事务是用户为完成一次任务所进行的一系列操作或者是为完成某种任务在机器上单独执行的一个程序。这些操作要么全做,要么全不做,是一个不可分割的单元。eg:解释:A中取出后,B就会存入。操作要么就都完成,要么都不做。定义事务的语句事务是一种机制,确保多个SQL语句被当做单个工作单元来处理。事务的开始和结束可以由用户显示控制。(例如银行取钱,由用户显示控制钱的取出和存入)如果用户没有显示的定义事物,则由DBMS按缺省规定自动划分事物。在SQL语言中,定义事物的语句有三条:BEG
摘要由CSDN通过智能技术生成

一.事务

  1. 概念理解
    事务是用户为完成一次任务所进行的一系列操作或者是为完成某种任务在机器上单独执行的一个程序。这些操作要么全做,要么全不做,是一个不可分割的单元。
    eg:
    在这里插入图片描述解释:A中取出后,B就会存入。操作要么就都完成,要么都不做。

  2. 定义事务的语句
    事务是一种机制,确保多个SQL语句被当做单个工作单元来处理。
    事务的开始和结束可以由用户显示控制。(例如银行取钱,由用户显示控制钱的取出和存入)如果用户没有显示的定义事物,则由DBMS按缺省规定自动划分事物。在SQL语言中,定义事物的语句有三条:
    BEGIN/start transaction
    COMMIT
    ROLLBACK

事务通常都是以BEGIN开始,以COMMIT或ROLLBACK结束。
COMMIT表示提交,即提交事务的所有操作。具体地说就是将事务中所有对数据库的更新写回磁盘上的物理数据库中,事务正常结束。一旦提交就不能撤销。

ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。
回滚到某一时刻:
定义存储点
savepoint point_name
rollback to savepoint point_name
eg:
在这里插入图片描述

存储点之前的都执行,之后的都不执行。
commit之后回滚就没意义了

  1. 事务的特性(ACID)
    (1)原子性
    事务中的各种操作要么都做,要么都不做。当事务非正常终止时,其中间结果将被取消。事务的原子性保证数据库的状态总是从一个一致性的状态变化到另一个一致性的状态,而不会出现不一致的中间状态。
    (2)一致性
    又称可串行性,并发执

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值