SQL---事务

简介: SQL---事务

一、概念

关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序

二、特性

  • 原子性:指事务中包括的诸操作要么全做,要么全不做
  • 一致性:指在事务结束时,数据库必须处于一种一致的状态
  • 隔离性:指事务的执行不能被其他事务干扰
  • 持久性:指事务一旦提交,对数据库中数据的改变是永久的

三、语句

1、BEGIN Transaction语句——开始事务

这条语句一般放在一个事务的开头(如果是显示事务),就是在告诉后面的SQL语句要结组开始工作了。

2、COMMIT Transaction语句——提交事务

它使得自BEGIN TRANSACTION语句对数据库的改变作为一个原子单元写到数据库中。

如图:执行了一个COMMIT语句,INSERT语句和UPDATE语句被实际保存

3、SAVE Transaction语句——创建事务

执行一个COMMIT语句,如有需要,使用一个ROLLBACK语句能够回滚到A、B两个保存点中任意一个位置处

4、ROLLBACK Transaction语句——回滚事务

使得DBMS回滚或撤销对数据库所做的某些或者所有改变

四、事务日志

1、什么是事务日志:它使专门用来对数据操作之前内容和操作之后内容的一个保存的,所有的记录内容都写到一个独立的文件中。如要删除一行数据会先在日志文件中将此行标记为删除,但是数据库中的数据文件并没有发生变化。只有在(包含多个SQL语句)整个事务提交后,再把整个事务中的sql语句批量同步到磁盘上的数据库文件。

2、事务日志的用途:可以帮助提高事务的效率,使用事务日志存储引擎在修改表的数据的时候只需要修改其内存拷贝,再把该行为记录到持久在磁盘的事务日志中,存储引擎在重启的时候依靠事务日志自动恢复这部分被修改数据。

 


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
2月前
|
SQL 存储 数据库
sql事务、视图和索引
sql事务、视图和索引
14 0
|
3月前
|
SQL Oracle 关系型数据库
[SQL]事务
[SQL]事务
43 0
|
8月前
|
SQL 关系型数据库 MySQL
数据库基本概念(SQL,索引,视图,事务,日志等)(二)
数据库基本概念(SQL,索引,视图,事务,日志等)(二)
195 0
|
5月前
|
SQL 缓存 关系型数据库
Mysql数据库 16.SQL语言 数据库事务
Mysql数据库 16.SQL语言 数据库事务
57 0
|
8月前
|
SQL 数据库
使用事务码 SAT 比较传统的 SELECT SQL 语句和 OPEN / FETCH CURSOR 分块读取 ABAP 数据库表两种方式的性能差异试读版
使用事务码 SAT 比较传统的 SELECT SQL 语句和 OPEN / FETCH CURSOR 分块读取 ABAP 数据库表两种方式的性能差异试读版
65 0
|
8月前
|
SQL 关系型数据库 MySQL
数据库基本概念(SQL,索引,视图,事务,日志等)(一)
数据库基本概念(SQL,索引,视图,事务,日志等)(一)
213 0
|
9月前
|
SQL 人工智能 数据可视化
|
10月前
|
SQL
SQL Server——事务
那么,你有没有思考过这样一个问题呢?如果这个过程中的某一个步骤错误了,比如,删除了原来信息,但添加时因为某种原因却没有将数据添加进去,这时是不是数据就出现了缺失?那时的你将会惊慌失措,痛恨自己手抖。
|
10月前
|
SQL 存储 数据库
SQL server的事务锁--概念篇
在我看来,锁,就是一种手段,在现实生活中的意义就是锁住你不想让别人看到的或者不让别人进去的某个事物,具有一定的私密性。
|
10月前
|
SQL 数据库
SQL中的事务问题
在我看来,事务就好比“一根藤上的蚂蚱”、“一手交钱一手交货”,要么同生,要么同不在,同生共死的的一种状态。取款时后台扣了我的钱,那么我就要取到钱。