zoukankan      html  css  js  c++  java
  • MySQL:事务

    事务: 将业务处理的过程当做一个最小的业务处理单元来处理

      比如:  朋友转账

      事务有四大特性:

        原子性:具有功能的最小单元,是密不可分;

        永久性:事务处理的正确数据,是永久存储在数据库中,不能返回;

        隔离性:一个事务在处理时,另外的事物要等待;

        一致性:使用事务修改数据时,数据修改前和数据修改后,数据应该是平衡的;

      事务什么存储引擎中使用:

        默认存储引擎Myisam:  查询内容少,查询速度快,不支持事务

        Innodb:适合大型数据库表,支持事务

    事务创建

      开启事务:BEGIN/START TRANSACTION;

      建立锁机制

      提交事务:commit;  事务成功

      数据回滚:rollback  事务失败

    事务锁机制

      共享锁:(带有外部锁的玻璃大门) - 读锁

        共享锁上可以创建共享锁,但是不能创建独占锁,创建共享锁的事务,所有的事务都可以读取数据,但是都不能操作数据

        select 语句 lock in share mode.

        select * from student [where sid=1] lock in share mode;

        根据锁住的内容划分

          行锁: 建立的某个锁只对某条数据有效  innodb  行锁;

          页锁: 建立锁对某些同一页中的数据有效;

          表锁: 建立锁是锁表的;- 锁表(mysql5之前,5之后出现了事务)

            lock tables 表名 write/read;

              具体的操作语句

            unlock tables;

      独占锁:(带有暗锁的黑皮大门) - 写锁

        独占锁上不能创建任何的锁,创建独占锁的事务,可以添加,删除,修改,查询数据等,但是其他事务只能读取数据,并且读取到的数据是老数据。

        select 语句 for update

  • 相关阅读:
    vue cli 3.0安装、项目创建
    Vue-详解设置路由导航的两种方法
    VUE项目启动流程
    vue项目创建
    前端UI优秀框架
    Spring MVC返回JSON的几种方法
    Cookie 和 Session 的区别
    Object.defineProperty()
    vuex getter传入参数
    后台管理系统权限控制的思路
  • 原文地址:https://www.cnblogs.com/shuo-128/p/6892836.html
Copyright © 2011-2022 走看看