zoukankan      html  css  js  c++  java
  • 第四章 数据更新 4-3 事务

    一、什么是事务
    在RDBMS中,事务是对表中数据进行更新的单位。简单来说,事务就是需要在同一个处理单元中执行的一系列更新处理的集合。
     
    二、创建事务

    事务的开始语言:

    例子:

    事务结束的命令:
    (1)COMMIT 提交处理
    COMMIT是提交事务包含的全部更新处理的结束指令。相当于文件处理中的覆盖保存。
    一旦提交,就无法恢复到事务开始前的状态了。

    注:虽然我们不知道事务开始的时间点,但是事务结束时一定要仔细进行确认。
     
    (2)ROLLBACK 取消处理
    ROLLBACK是取消事务包含的全部更新处理的结束指令,相当于文件处理中的放弃保存。
    一旦回滚,数据库就会恢复到事务开始之前的状态。

    例子:

    三、事务处理何时开始
     
    在不使用指令而悄悄开始事务的情况下,应该如何区分各个事务呢?
    分两种情况:
    (1)自动提交模式:每一条SQL语句就是一个事务。
    (2)直到用户执行COMMIT或者ROLLBACK为止算一个事物。
    使用(1)规则的数据库有SQL Server、PostgreSQL、MySQL
    使用(2)规则的数据库有Oracle
     
    三、ACID特性
    DBMS的事务都遵循四种特性,ACID特性,所有DBMS都必须遵守的规则。
    (1)原子性Atomicity
    原子性是指事务结束时,其中所包含的更新处理要么全部执行,要么完全不执行,也就是说要么占有一切,要么一无所有。
    (2)一致性 Consistency
    一致性是指事务中包含的处理要满足数据库提前设置的约束,如主键约束,NOT NULL约束等。对于SQL来说,不合法的SQL会被回滚。一致性也称为完整性。

    (3)隔离性 Isolation
    隔离性指的是在保证不同事务之间互不干扰的特性。该特性保证了事务之间不会互相嵌套。
    此外,在某个事务中进行的更改,在该事务结束之前,对其他事务而言是不可见的。
    (4)持久性 Durability
    持久性称为耐久性,指的是在事务(不论是提交还是回滚)结束后,DBMS能够保证该时间点的数据状态会被保存的特性。
    即使由于系统故障导致数据丢失,数据库也一定能够通过某种手段进行恢复。

  • 相关阅读:
    设置文本框的九种对齐方式(左上,中上,右上,左中,中中,右中,左下,中下,右下)
    VB实现小数和分数的相互转化
    已知三角形三个边的长度值,求三个角的大小
    全国专业技术人员计算机应用能力考试
    EXCELSHEET 中"输入”或“编辑”状态与“就绪”状态的切换
    递归方法巧解不定方程(二)
    VB计算圆周率
    获取路径名的原始大小写状态
    opengl NeNe 第二课的学习
    广东电信公话业务中CRM系统的研究与探索
  • 原文地址:https://www.cnblogs.com/mumulin99/p/9835602.html
Copyright © 2011-2022 走看看