自治事务 自治事务是独立的事务操作,如果考虑到事务回滚,必须单独写成一个触发器来完成, 一个事务A在另一个事务B内被调用,那个事务A是自治事务,自治事务A执行过程中会脱离其session内未执行完毕的事务的影响。 如果session从B事务开始——A事务开始和结束——B事务结束 上述的A事务不受没有 ...
分类:
数据库 时间:
2016-06-04 12:12:27
阅读次数:
196
如何测试事务,测试事务回滚情况:
我做了大量的不同的测试:
场景1:
Service层中使用注解@Transactional,注解@PersistenceContext private EntityManager emt;
写了两个方法
public void insertfail() //插入失败要回滚
{
f...
分类:
编程语言 时间:
2016-06-03 19:20:49
阅读次数:
373
转自 http://www.cnblogs.com/retop/p/5193394.html 理论介绍 在进行数据库添加、修改、删除时,为了保证事务的一致性,即操作要么全部成功,要么全部失败。例如银行A、B两个账户的转账业务。一方失败都会导致事务的不完整性,从而事务回滚。而工作单元模式可以跟踪事务, ...
分类:
其他好文 时间:
2016-05-31 20:30:04
阅读次数:
230
设置事务回滚的当为ON时,如果你存储中的某个地方出了问题,整个事务中的语句都会回滚为OFF时,只回滚错误的地方 ...
分类:
其他好文 时间:
2016-05-27 14:44:27
阅读次数:
149
Mybatis 拦截器不做解释了,用过的基本都知道,这里用load data local主要是应对大批量数据的处理,提高性能,也支持事务回滚,且不影响其他的DML操作,当然这个操作不要涉及到当前所load的数据,其中在使用的时候一定要local , 这个命令使用是mysql规定的,否则不加则会认为是 ...
分类:
数据库 时间:
2016-05-27 11:03:43
阅读次数:
488
1. 临时表适用数据量较大的情况,因为临时表可以建立索引 2. 表变量适用于数据较小的情况,表变量只能在定义时创建约束(PRIMARY KEY/UNIQUE)从而间接建立索引 3. 临时表是事务性的,数据会随着事务回滚而回滚,表变量是非事务性的 4. 临时表和表变量都存放在内存中,当内存存在压力时才 ...
分类:
数据库 时间:
2016-05-26 18:30:44
阅读次数:
232
1、Slave_SQL_Running:No 原因: 1.程序可能在slave上进行了写操作 2.也可能是slave机器重起后,事务回滚造成的. 解决办法一: mysql> slave stop;mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;mysql> sl ...
分类:
数据库 时间:
2016-05-17 19:18:26
阅读次数:
264
一、使用场景举例 在了解@Transactional怎么用之前我们必须要先知道@Transactional有什么用。下面举个栗子:比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删 ...
分类:
编程语言 时间:
2016-05-15 16:48:16
阅读次数:
183
1. 在操作事务的时候,如果发现当前事务操作是不合理的,此时只要还没有提交事务,就可以通过回滚取消当前事务,接下来就针对事务的回滚进行详细讲解。 2. 为了演示回滚操作,在上一个笔记案例基础之上,此时a账户有1000元,b账户也有1000元,开启一个事务,通过update语句将a账户的100元转给b ...
分类:
数据库 时间:
2016-05-13 20:27:34
阅读次数:
270
一、spring-mybatis.xml文件中加入事务管理配置 要加入的配置代码 二、在调用的方法上加上@Transactional注解(必须为public方法才行,不要捕捉异常,要让异常自动抛出。否则不能进行事务回滚) 三、测试方法(用JUnit进行测试) 简单记录下,仅供参考。 ...
分类:
其他好文 时间:
2016-05-13 09:37:17
阅读次数:
244