TCL

    transaction  事务   --  DML
           定义为把一连串的操作作为单个逻辑工作单元处理
               -----     例如:银行转账

事务特性   ACID
    原子性     atomicity           所有的数据修改  要么一起执行  要么不执行
    一致性     congsistency     所有的数据修改同时得到反应
    隔离性     isolation             另一个事务需要在此事务结束之后才能执行
    持久性     durability           数据变动是永久的
  
使用事务的优点:
   他们保证了数据的一致性
   使用事务使得数据修改更为灵活而且修改过程是可控的
   即使在用户处理失败或者系统发生故障时数据仍然是安全的
   事务保证DML(数据操纵语言)语句对于数据的所作的变动是一致的

隐式事务   DDL
显式事务   DCL   - commit
commit  语句完成显式事务,并且使得所有的修改是永久有效的
rollback   语句终止当前事务,使得数据库返回到以前的状态

实例:
  1. select * from student;
  2. update student set sex = '人' where stuNo = '00011';
  3. commit;
  4. rollback; -- 回滚至上一commit之后
  5. show autocommit; -- 默认off
  6. set autoCommit on;
  7. set autoCommit off;
  8. create table AA(
  9. AA char(10)
  10. ); -- 隐式commit
  11. select * from bankcount;
  12. -- 多条语句 事务
  13. update bankcount set money = money - 10000 where countno = '110 000 2000 888';
  14. update bankcount set money = money + 10000 where countno = '110 000 2000 889';
  15. rollback;
  16. commit;
  17. -- rollback 定义保存点 savePoint;
  18. SAVEPOINT aa;
  19. update bankcount set money = money + 10000 where countno = '110 000 2000 888';
  20. SAVEPOINT bb;
  21. update bankcount set money = money - 10000 where countno = '110 000 2000 889';
  22. rollback to bb; -- 回滚之保存点之后
  23. commit;
在下列情况下,数据修改自动被回滚: 
    1. 系统崩溃或发生故障. 
    2. SQL*Plus 意外终止. 

隔离性: 
  上锁防止多个用户同时修改数据.
  上锁可以是隐式或显式的. 

  上锁的一些基本内容:
             上锁可预防并发事务之间的破坏性的交互.
             上锁是自动施行的,无须用户干预.
             上锁把操作限制到可能的最小粒度. 
             只有在事务结束后,上锁才被解除.
             DML行数据排它锁
             事务排它锁



来自为知笔记(Wiz)

转载于:https://www.cnblogs.com/jarl/p/5892887.html

TCL_事务控制语言相关推荐

  1. 十八、MySQL之TCL事务控制语言(详解)

    TCL : Transaction Control Language 事务控制语言 零.MySQL 中的存储引擎 1.概念:在mysql中的数据用各种不同的技术存储在文件(或内存)中. 2.通过sho ...

  2. mysql 事务 数量_MySQL 数据查询语言(DQL) 事务控制语言(TCL)详解

    一. 数据查询语言(DQL)(重中之重) 完整语法格式: select 表达式1|字段,.... [from 表名 where 条件] [group by 列名] [having 条件] [order ...

  3. TCL——事务控制语言

    一.事务控制语言(TCL)介绍 1.1 事务 事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个MySQL语句是相互依赖的.而整个单独单元作为一-个不可分割的整体,如果单元中某条SQL语句一 ...

  4. 一、TCL事务控制语言 二、MySQL中的约束 三、多表查询(重点) 四、用户的创建和授权 五、MySQL中的索引...

    一.TCL事务控制语言 ###<1>事务的概念 事务是访问并可能更新数据库中各种数据项的执行单元. 事务是一条SQL语句,一组SQL语句,或者整个程序. 事务是恢复和并发控制的基本单位. ...

  5. MySQL-7 DDL约束 标识列 TCL事务控制语言 视图view

    文章目录 DDL语言 常见约束 约束分类 添加约束的时机 创建表时添加约束 通用写法 修改表时添加约束 修改表时删除约束 主键和唯一的对比 外键约束 案例讲解常见约束 标识列 TCL事务控制语言 事务 ...

  6. DCL(数据控制语言)和TCL(事务控制语言)

    文章目录 1.DCL(数据控制语言) 2.TCL(事务控制语言) 3. 其他常用sql语句 1.DCL(数据控制语言) DCL主要用来管理数据库用户以及用户涉及的权限 1.1 创建数据库中的新用户 语 ...

  7. MySQL_TCL事务控制语言_刘锋的博客

    文章目录 TCL事务控制语言 一.事务的属性(ACIB) 原子性 一致性 隔离性 持久性 二.事务的创建 隐式的事务 显式的事务 三.事务的隔离级别 脏读: 不可重复度: 幻读: 四.delete和t ...

  8. MySQL --- 19♪ 进阶15 TCL事务控制语言--建立结束事务/设置断点--默认隔离级别--脏读/幻读/不可重复读

    #TCL事物控制语言 : /*   Transaction control language : 事物控制语言   事务:     一个或者一组sql语句组成一个执行单元,这个执行单元要么全部执行,要 ...

  9. SQL事务控制语言(TCL)

    1.什么是事务? 事务(Transaction)是由一系列相关的SQL语句组成的最小逻辑工作单元,在程序更新数据库时事务事关重要,因为必须维护数据的完整性.事务由数据操作语言完成,是对数据库所做的一个 ...

最新文章

  1. Python 从零学起(纯基础) 笔记 (二)
  2. linux 中的if else语句
  3. IBM 计划在公司内部推行基于比特币的开源项目Hyperledger
  4. 有趣的MS Live Labs
  5. Maven(3)--聚合与继承
  6. 01.analyzer简介及char_filter组件
  7. 1、Ribbon相关组件初始化 - Ribbon 核心原理与源码分析
  8. linux防火墙能阻止cc攻击吗,linux csf 防火墙 防止少量的ddos cc攻击很有效
  9. 小米平板5 pro 解锁 Bootloader
  10. 【CSRF-01】跨站请求伪造漏洞基础原理及攻防
  11. Windows和Linux虚拟机文件相互复制
  12. vue实现前端页面缓存
  13. Discuz论坛超漂亮手机模板
  14. 【矩阵论】线性空间与线性变换(5)
  15. python计算器教程vscode_第3天 | 12天搞定Python,用VSCode编写代码
  16. minHash最小哈希
  17. 《自然杂志》19卷4期的 ‘探索物理学难题的科学意义'的 97个悬而未决的难题
  18. phpstorm使用总结
  19. 大数据-hadoop-服务器-网络拓扑
  20. 参数化2--CSV Data Set Config 参数化配置

热门文章

  1. EXCHANGE服务器灾难恢复
  2. ios sdk 穿山甲_GitHub - ArthurKnight/flutter_ad_pangolin_plugin: iOS flutter 穿山甲插件
  3. python读取json文件多个json数据_Python 加载包含多个JSON对象的JSON文件
  4. 动态RAM的集中刷新、分散刷新、异步刷新
  5. Python——上下文管理器
  6. foobar2000隐藏桌面悬浮窗头像_多多情侣头像大全app-多多情侣头像大全软件v1.0.1...
  7. 为什么要进行特征归一化/标准化?
  8. Reef Finance与Manta Network就流动性解决方案达成合作
  9. 以太坊上DeFi协议总锁仓量突破190亿美元
  10. SAP License:固定资产减值的两种逻辑