14 事务处理

事务的定义时一个独立的逻辑工作单元; 它由特定的一系列必须作为一个整体一起成功或失败的SQL语句组成, 每个事务都有一个很清楚的起点, 就是第一个可执行的SQL语句开始执行的时候, 以及一个确定的结束点, 当事务的工作进行了提交或回滚之后. 已经开始但还没有将其工作提交或回滚的事务是活动事务, 事务一个最常见的例子就是银行转账.

ACID 属性

原子性 事务中的所有任务都必须执行或者不执行, 不存在部分事务.

一致性 事务将数据库从一个一致性状态带到另一个一致性状态.

隔离性 一个事务所带来的影响直到该事务提交之前对其他事务来说都是不可见的

持久性 经过提交的事务所进行的修改是永久性的.

活动的事务

select current_scn from v$database;

select xid, status from v$transaction;

时间: 2024-10-08 11:34:48

14 事务处理的相关文章

MySql数据库学习总结(MySQL入门到精通)

2017.1.24-2.3日(在大兴实验室) 1.数据库存储引擎: (1)MyISAM: 访问速度快,对事物完整性没要求,并以访问为主的适合这个 (2)InnoDB: 更占磁盘空间,需要进行频繁的更新.删除操作,对事物完整性要求比较高,需要实现并发控制时适合. (3)MEMORY:内存存储数据,访问比较快,但是安全无保障,数据小的时候适合这个. 2.创建视图: create view view-name as +sql语句  即封装sql语句,利于复用. create view view_pro

MySQL具体解释(14)----------事务处理

前言:前一篇文章关于事务处理的博文没有写清楚,读起来非常晦涩.非常难理解,所以有整理了一些资料,帮助理解.见谅! 关于MySQL事务处理学习记 START TRANSACTION COMMIT ROLLBACK 语法 START TRANSACTION    | BEGIN [WORK] COMMIT   [WORK]    [AND [NO] CHAIN]    [  [NO] RELEASE  ] ROLLBACK  [WORK]  [AND  [NO]  CHAIN]   [  [NO]

MySQL详解(14)----------事务处理

前言:前一篇文章关于事务处理的博文没有写清楚,读起来很晦涩,很难理解,所以有整理了一些资料,帮助理解,见谅! 关于MySQL事务处理学习记 START TRANSACTION COMMIT ROLLBACK 语法 START TRANSACTION    | BEGIN [WORK] COMMIT   [WORK]    [AND [NO] CHAIN]    [  [NO] RELEASE  ] ROLLBACK  [WORK]  [AND  [NO]  CHAIN]   [  [NO] RE

springBoot(14):使用SQL关系型数据库-事务处理

一.事务的四个特性(ACID) 原子性(Atomicity): 事务是一个原子操作,由一系列动作组成.事务的原子性确保动作要么全部完成,要么完全不起作用. 一致性(Consistency): 一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败.在现实中的数据不应该被破坏. 隔离性(Isolation): 可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏. 持久性(Durability): 一旦事务完成,无论发

数据库的事务处理---PDO实现

事务处理用一句简单的术语称为"原子操作",即一件事情,要么全部完成,要么一个也别完成:有一种一荣俱荣,一损俱损的感觉. 最常用的就是在交易过程中,比如在网络中,甲方付费给乙方,钱确认付款,但是乙方并未确认收款,那么,甲方的账户并不会减少,乙方的账户也并不会增加. 只有当甲方确认付款,乙方确认收款,两个步骤都完成,并且不出现错误的时候,双方的账户才会改变 看代码也许更好理解 1 <?php 2 try{ 3 $pdo=new PDO("mysql:host=localho

mysql 事务处理

知识点: 事务处理是什么? 当数据库表呈树状机构设计时,我们对一个表进行增.删.改的操作,可能会要求对另外的表进行相同的操作,为了保证这多个sql能同时执行成功,就要使用mysql的事务处理. 注意:只有增删改的操作可以进行回滚,alter等操作不可行! 事务特性: 1.原子性:所有的sql执行操作必须全部成功,否则则回滚到处理前状态 2.一致性: 确保数据库正确地改变状态后,成功提交的事务. 3.隔离性: 使事务操作彼此独立的和透明的. 4.持久性: 确保提交的事务的结果或效果的系统出现故障的

第一次接触终极事务处理——Hekaton

在这篇文章里,我想给出如何与终极事务处理(Extreme Transaction Processing (XTP) )的第一步接触,即大家熟知的Hakaton.如果你想对XTP有个很好的概况认识,我推荐Kalen Delaney写的关于它的白皮书,另外微软研究院也发布了题为“对于内存数据库的高性能并发控制机制(High-Performance Concurrency Control Mechanisms for Main-Memory Databases)”的研究白皮书,点此下载. 所有XTP维

JDBC编程之事务处理

JDBC中的事务处理指的是事务的一致性等问题,例如插入一条数据(id,name,password)到表中,另一条数据(address,id)到另一张表中,并且两条数据是相关联的,那么假设第一条数据插入成功,但是第二条数据由于异常没有插入成功,那么此时为了保证事务的一致性.完整性,则两条数据都不能够插入. 1. 创建Conn连接类 Conn.java 1 package com.test.conn; 2 3 import java.sql.Connection; 4 import java.sql

MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

首先需要回顾一下上一篇文章中的内容:MySQL数据库学习笔记(九)----JDBC的PreparedStatement接口重构增删改查 一.JDBC事务处理: 我们已经知道,事务的概念即:所有的操作要么同时成功,要么同时失败.在MySQL中提供了Commit.Rollback命令进行事务的提交与回滚.实际上在JDBC中也存在事务处理,如果要想进行事务处理的话,则必须按照以下的步骤完成. JDBC中事务处理的步骤: 1.要取消掉JDBC的自动提交:void setAutoCommit(boolea