mysql术语
事务
概念:在关系数据库中,一个事物可以是一条sql语句,一组sql语句或整个程序。
特性:
事物应该具有4个特性:原子性、一致性、隔离性、持久性、统称为ACID特性。
原子性(A)一个不可分割的工作单位,逻辑上的一组操作,要么全部成功,要么全部失败。要求必须是INNODB引擎。
一致性(C)事物必须由一个一致性到另一个一致性状态,与原子性密切相关的。有非法数据(外键约束之类),事务撤回。
隔离性(I)一个事物的执行不能被其他事物干扰。即一个事物内部的操作及使用的数据对并发的其他事物是隔离的,并发执行的各个事物之间不能相互干扰。
持久性(D)指的是一个事物一旦提交,他对数据库中数据的改变就是永久的。
用途:尤其在订单系统、银行系统中,事务是不可或缺的。这篇文章主要介绍了事务的特性,以及mysql innoDB对事务的支持。
注意:
MySQL除了innoDB和NDB,之外的一些存储引擎是不支持,事务处理的,所以改变了autocommit的值也没什么用,而且不会报错。所以在使用事务处理时一定要查看当前操作表的默认存储引擎或则特定存储引擎。
在 MySQL 命令行的默认设置下,事务都是自动提交的(隐式),即执行SQL语句后就会马上执行 COMMIT 操作。这就表示除非显式地开始一个事务,否则每个查询都被当做一个单独的事务自动执行。我们可以通过设置autocommit的值来决定是否自动提交。
一、自动提交的ON/OFF与显示事务的处理
1.)查询autocommit的值是NO,表示自动提交开启:
mysql> show variables like 'autocommit';
2.)使用SET改变MySQL的自动提交模式:
SET AUTOCOMMIT=0 禁止自动提交
SET AUTOCOMMIT=1 开启自动提交
3.)显示事务的处理:
BEGIN 开始一个事务
ROLLBACK 事务回滚
COMMIT 事务确认
二、事务控制语句
BEGIN 或 START TRANSACTION; 显式地开启一个事务;
COMMIT; 也可以使用COMMIT WORK,不过二者是等价的。COMMIT会提交事务,并使已对数据库进行的所有修改称为永久性的;
ROLLBACK; 有可以使用ROLLBACK WORK,不过二者是等价的。回滚会结束用户的事务,并撤销正在进行的所有未提交的修改;
SAVEPOINT identifier; SAVEPOINT允许在事务中创建一个保存点,一个事务中可以有多个SAVEPOINT;
RELEASE SAVEPOINT identifier; 删除一个事务的保存点,当没有指定的保存点时,执行该语句会抛出一个异常;
ROLLBACK TO identifier; 把事务回滚到标记点;
SET TRANSACTION; 用来设置事务的隔离级别。InnoDB存储引擎提供事务的隔离级别有READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ和SERIALIZABLE。
mysql术语的更多相关文章
- MySQL 术语
MySQL 术语: MySQL 术语 含义 B-树 英文:Balance Tree:读音:B树(中间的横线,是分隔符的意思:注意:不读"B减树")
- mysql术语解释
数据库(database): 数据表的集合: 数据表 (table):数据的矩阵: 列(column): 相同属性的数据的集合: 行(row): 一个对象的各种属性数据的集合: 冗余():一个字段在多 ...
- Python day7之mysql
写在前面: 由于毕业论文撰写和答辩耽搁了几个月,但是在这几个月没有放弃学习Python,就是没有时间写博客.进行我们主要对数据库mysql的操作指令集的学习. 一.mysql术语 Mysql是最流行的 ...
- mysql的隔离性和锁
INNODB的隔离性质 INNODB的事务支持4种隔离机制,分别是 READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, and SERIALIZABL ...
- MySQL多表查询总结
MySQL术语: Redundacncy(冗余):存储两次或多次数据,以便实现快速查询. Primary Key(主键):主键是唯一的.表中每条记录的唯一标识. Foreign Key(外键):用于连 ...
- SQL集合运算 差集 并集 交
SQL-3标准中提供了三种对检索结果进行集合运算的命令:并集UNION:交集INTERSECT:差集EXCEPT(在Oracle中叫做 MINUS).在有些数据库中对此的支持不够充分,如MySql中只 ...
- mysql数据库相关基本术语和概念
1.DDL:Data Definition Language,即数据定义语言,定义数据库涉及的各种对象,定义数据的完整性约束.保密限制等约束. 2.DML:Data Manipulation Lang ...
- MySQL · 关系模型的基本术语
关系:整个二维表 关系名:表格名称 元组:行数据(记录) 属性:列数据(字段/分量) 属性名:列名称(字段名) 主键:唯一确定元组的属性组(关键字) 域:属性的取值范围 关系模式:关系的描述,表示为: ...
- mysql交互式连接&非交互式连接
交互式操作:通俗的说,就是你在你的本机上打开mysql的客户端,就是那个黑窗口,在黑窗口下进行各种sql操作,当然走的肯定是tcp协议. 非交互式操作:就是你在你的项目中进行程序调用.比如一边是tom ...
随机推荐
- windows平台mongoDB安装配置
一.首先安装mongodb 1.官网下载mongoDB:http://www.mongodb.org/downloads,选择windows平台.安装时,一路next就可以了.我安装在了F:\mong ...
- mysql 系统变量和session变量
mysql系统变量包括全局变量(global)和会话变量(session),global变量对所有session生效,session变量包括global变量.mysql调优必然会涉及这些系统变量的调整 ...
- Mysql—(2)—
数据库存储引擎 (更多详见) 一 什么是存储引擎 mysql中建立的库===>文件夹 库中建立的表===>文件 现实生活中我们用来存储数据的文件应该有不同的类型:比如存文本用txt类型,存 ...
- ModelForm组件
ModelForm组件 Django的model form组件 这是一个神奇的组件,通过名字我们可以看出来,这个组件的功能就是把model和form组合起来,先来一个简单的例子来看一下这个东西怎么用: ...
- 转载 C#开发串口总结,并提炼串口辅助类到公用类库中
C#开发串口总结,并提炼串口辅助类到公用类库中 开发C#相关的项目有很多年了,一直没有接触串口的开发,近期由于工作的需要,需要了解熟悉对硬件串口的开发,通过对串口的深入了解,串口也不再是什么神秘的东西 ...
- Linux系统——特殊符号、通配符及正则表达式
特殊符号 | 管道符号,将管道符左边的命令的执行结果以字符串的形式通过 管道符传送到管道符右边命令末尾,作为管道符右边命令的执行 范围 > 输出重定向 >> 追加输出重定向 < ...
- 运输层协议--TCP及UDP协议
TCP及UDP协议 按照网络的五层分级结构来看,TCP及UDP位于运输层,故TCP及UDP是运输层协议.TCP协议--传输控制协议UDP协议--用户数据报协议 多路复用及多路分解 图多路复用及多路分解 ...
- 63. Unique Paths II(有障碍的路径 动态规划)
Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...
- 42. Trapping Rain Water(直方图 存水量 hard)
Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...
- tensorflow中使用tf.variable_scope和tf.get_variable的ValueError
ValueError: Variable conv1/weights1 already exists, disallowed. Did you mean to set reuse=True in Va ...