zoukankan      html  css  js  c++  java
  • 事务控制语言(TCL)

    
    
    一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。如:转账。
    原子性(Atomicity):一个事务要么都执行,要么都回滚(不可再分割)
    一致性(Consistency):保证数据的状态操作前和操作后保持一致
    隔离性(Isolation):多个事务同时操作相同数据库的同一个数据时,一个事务的执行不受另外一个事务的干扰
    持久性(Durability):一个事务一旦提交,则数据将持久化到本地(则会永久的改变数据库的数据),除非其他事务对其进行修改
     
    事务的步骤
    1、开启事务
    2、编写事务的一组逻辑操作单元(多条sql语句)
    3、提交事务或回滚事务
    #演示事务的使用步骤:(以转账为例)
    #开启事务
    set autocommit = 0;
    start transaction;
    #编写一组事务语句
    update account set balance =500 where usename ='张无忌';
    update account set balance =1500 where usename ='郭襄';
    #结束事务
    commit;

    事务的分类:

    隐式事务,没有明显的开启和结束事务的标志

    insert、update、delete语句本身就是一个事务

    显式事务,具有明显的开启和结束事务的标志

    前提:取消自动提交功能
       set autocommit=0;
        1、开启事务
        start transaction;可省略
        2、编写事务的一组逻辑操作单元(多条sql语句)
        insert
        update
        delete
        设置回滚点:savapoint 回滚点名;
        3、提交事务或回滚事务
        提交 :commit;
        回滚:rollback;
        回滚到指定的地方:rollback to 回滚点名;

    使用到的关键字

    set autocommit=0;
    start transaction;
    commit;
    rollback;
    
    savepoint  断点
    commit to 断点
    rollback to 断点

    参考:

    https://www.jianshu.com/p/6738c4b11da8



  • 相关阅读:
    Ehcache2 的配置(不使用配置文件)
    约定优于配置
    Eclipse 3.5使用dropins的插件安装方式
    程序开发为什么要使用框架
    关于远程连接MySQL数据库的问题解决
    python使用open经常报错:TypeError: an integer is required的解决方案
    python仿微软记事本
    抓取oschina上面的代码分享python块区下的 标题和对应URL
    单词翻译
    python多线程下载
  • 原文地址:https://www.cnblogs.com/sea-stream/p/11297744.html
Copyright © 2011-2022 走看看