- 浏览: 261803 次
- 性别:
- 来自: 新乡
文章分类
- 全部博客 (227)
- servciemix (10)
- db (18)
- javaTools (4)
- hibernate (31)
- web (3)
- spring (14)
- design pattern (4)
- java security (3)
- portal (1)
- ejb (6)
- session (2)
- java_lang (21)
- jbpm (29)
- struts (7)
- orgRights (2)
- project manager Jira (7)
- 跨库事务 (2)
- mysql (14)
- ubuntu (7)
- osgi (9)
- maven ant make (4)
- 分布式 高并发 高性能 (5)
- virgo-dm_server (0)
- osgi web (3)
- platform (1)
- smooks (1)
- business (1)
- 职场生涯 (14)
- Java编码格式 (2)
- web服务 (1)
- 计算机使用 (1)
- 健康工作生活的保障,工作中务必抛掉的不良心态 (4)
- 电信-网络监控 (1)
- 多线程-multithread (1)
- 海量数据-高性能 (2)
- Mybatis (1)
- web开发平台研发 (0)
- oracle (0)
- 应用服务器调优 (0)
- web前端 (0)
- servlet-jsp (0)
- tomcat (2)
- newtouch (1)
- portal_liferay (2)
- version control (1)
- apm-impact (2)
- tools (1)
- 研发管理 (1)
- 电商业务 (1)
- 生鲜电商市场调查 (0)
- PBX (0)
- 房东 (0)
最新评论
-
lifuchao:
...
权限问题 -
Branding:
谢谢,受教了,另外,CONN AS SYSDBA,必须是在操作 ...
Oracle密码忘记了怎么办? -
zhuchao_ko:
...
Portal实现原理 -
败类斯文:
不知道改哪里。。。木有见到红色。。表示悟性低了、、
jira error: Neither the JAVA_HOME nor the JRE_HOME environment variable is defin -
c__06:
正文:假如事务我是这样定义的: <tx:method n ...
Spring中Transactional配置
10.1.2 事务和事务边界
http://book.51cto.com 2009-06-16 22:16 牛新庄 清华大学出版社 我要评论(0)
* 摘要:《循序渐进DB2-系统管理、运行维护与应用案例》第10章锁和并发,本章首先介绍了通用的事务概念,并指出DB2在用户读取、写入数据时的加锁策略、锁模式、兼容性等。本章还介绍了在并发控制中常碰到的4种数据异常现象,同时讲述了 DB2如何使用锁克服这些问题的。本节为大家介绍事务和事务边界。
* 标签:DB2 系统管理 循序渐进DB2-系统管理、运行维护与应用案例
*
10.1.2 事务和事务边界
事务(也称为工作单元)是一种将一个或多个SQL 操作组合成一个单元的可恢复操作序列,通常位于应用程序进程中。事务的启动和终止定义了数据库的一致性:要么将一个事务中执行的所有SQL操作的结果都应用于数据库(提交),要么完全取消并丢弃已执行的所有SQL操作的结果(回滚)。
运行嵌入式SQL应用程序或脚本,在可执行SQL语句第一次执行时(在建立与数据库的连接之后或在现有事务终止之后),事务就会自动启动。在启动事务之后,必须由启动事务的用户或应用程序显式地终止它,除非使用了称为自动提交(automatic commit)的过程(在这种情况下,发出的每个单独的SQL语句被看做单个事务,它一执行就被隐式地提交了)。
在大多数情况下,通过执行COMMIT或ROLLBACK语句来终止事务。当执行COMMIT语句时,自从事务启动以来对数据库所做的一切更改就成为永久性的了-- 即它们被写到磁盘。当执行ROLLBACK语句时,自从事务启动以来对数据库所做的一切更改都被撤销,并且数据库返回到事务开始之前所处的状态。不管是哪种情况,数据库在事务完成时都保证能回到一致状态。
一定要注意一点:虽然事务通过确保对数据的更改仅在事务被成功提交之后才成为永久性的,从而提供了一般的数据库一致性,但还是须要用户或应用程序来确保每个事务中执行的SQL操作序列始终会导致一致的数据库。
1. COMMIT和ROLLBACK操作的效果
正如前面提到的,通常通过执行COMMIT或ROLLBACKSQL语句来终止事务。为了理解这些语句如何工作,我们看下面的示例。
如果按所示的顺序执行下列SQL语句(由3个事务组成的简单工作负载):
1. CONNECT TO SAMPLE
2. CREATE TABLE DEPARTMENT (DEPT_ID INTEGER NOT NULL, DEPT_NAME VARCHAR(20))
3. INSERT INTO DEPARTMENT VALUES(100, 'PAYROLL')
4. INSERT INTO DEPARTMENT VALUES(200, 'ACCOUNTING')
5. COMMIT
6.
7. INSERT INTO DEPARTMENT VALUES(300, 'SALES')
8. ROLLBACK
9.
10. INSERT INTO DEPARTMENT VALUES(500, 'MARKETING')
11. COMMIT
这将创建一个名为DEPARTMENT的表,它的结构如表10-1所示。
表10-1 表DEPARTMENT的结构
DEPT_ID
DEPT_NAME
100
PAYROLL
200
ACCOUNTING
500
MARKETING
当执行第一个COMMIT语句时,创建名为DEPARTMENT的表并向表中插入两条记录,这两个操作都会变成永久性的。当执行到ROLLBACK语句时,删除插入DEPARTMENT表中的第三条记录,该表返回到执行插入�%
【责任编辑:云霞 TEL:(010)68476606】
回书目 上一节 下一节
上一篇: 10.1.1 数据一致性 下一篇: 10.1.3 锁的概念(1)
* 相关文章
* ·15.10 SQL0805和SQL0818错误
* ·15.9.12 对重要敏感数据加密
* ·15.9.11 使用LBAC控制数据访问
* ·15.9.10 使用存储过程控制数据访问
* ·15.9.9 使用视图控制数据访问
* 频道热门
* ·Python 3程序开发指南(第二版)
* ·Android开发进阶必读——评《精通Android 2》
* ·谈程序员的思维训练——评《程序员的思维修炼》
* ·6.2.4 创建完全整合的数据类型
* ·4.1 控制结构
http://book.51cto.com 2009-06-16 22:16 牛新庄 清华大学出版社 我要评论(0)
* 摘要:《循序渐进DB2-系统管理、运行维护与应用案例》第10章锁和并发,本章首先介绍了通用的事务概念,并指出DB2在用户读取、写入数据时的加锁策略、锁模式、兼容性等。本章还介绍了在并发控制中常碰到的4种数据异常现象,同时讲述了 DB2如何使用锁克服这些问题的。本节为大家介绍事务和事务边界。
* 标签:DB2 系统管理 循序渐进DB2-系统管理、运行维护与应用案例
*
10.1.2 事务和事务边界
事务(也称为工作单元)是一种将一个或多个SQL 操作组合成一个单元的可恢复操作序列,通常位于应用程序进程中。事务的启动和终止定义了数据库的一致性:要么将一个事务中执行的所有SQL操作的结果都应用于数据库(提交),要么完全取消并丢弃已执行的所有SQL操作的结果(回滚)。
运行嵌入式SQL应用程序或脚本,在可执行SQL语句第一次执行时(在建立与数据库的连接之后或在现有事务终止之后),事务就会自动启动。在启动事务之后,必须由启动事务的用户或应用程序显式地终止它,除非使用了称为自动提交(automatic commit)的过程(在这种情况下,发出的每个单独的SQL语句被看做单个事务,它一执行就被隐式地提交了)。
在大多数情况下,通过执行COMMIT或ROLLBACK语句来终止事务。当执行COMMIT语句时,自从事务启动以来对数据库所做的一切更改就成为永久性的了-- 即它们被写到磁盘。当执行ROLLBACK语句时,自从事务启动以来对数据库所做的一切更改都被撤销,并且数据库返回到事务开始之前所处的状态。不管是哪种情况,数据库在事务完成时都保证能回到一致状态。
一定要注意一点:虽然事务通过确保对数据的更改仅在事务被成功提交之后才成为永久性的,从而提供了一般的数据库一致性,但还是须要用户或应用程序来确保每个事务中执行的SQL操作序列始终会导致一致的数据库。
1. COMMIT和ROLLBACK操作的效果
正如前面提到的,通常通过执行COMMIT或ROLLBACKSQL语句来终止事务。为了理解这些语句如何工作,我们看下面的示例。
如果按所示的顺序执行下列SQL语句(由3个事务组成的简单工作负载):
1. CONNECT TO SAMPLE
2. CREATE TABLE DEPARTMENT (DEPT_ID INTEGER NOT NULL, DEPT_NAME VARCHAR(20))
3. INSERT INTO DEPARTMENT VALUES(100, 'PAYROLL')
4. INSERT INTO DEPARTMENT VALUES(200, 'ACCOUNTING')
5. COMMIT
6.
7. INSERT INTO DEPARTMENT VALUES(300, 'SALES')
8. ROLLBACK
9.
10. INSERT INTO DEPARTMENT VALUES(500, 'MARKETING')
11. COMMIT
这将创建一个名为DEPARTMENT的表,它的结构如表10-1所示。
表10-1 表DEPARTMENT的结构
DEPT_ID
DEPT_NAME
100
PAYROLL
200
ACCOUNTING
500
MARKETING
当执行第一个COMMIT语句时,创建名为DEPARTMENT的表并向表中插入两条记录,这两个操作都会变成永久性的。当执行到ROLLBACK语句时,删除插入DEPARTMENT表中的第三条记录,该表返回到执行插入�%
【责任编辑:云霞 TEL:(010)68476606】
回书目 上一节 下一节
上一篇: 10.1.1 数据一致性 下一篇: 10.1.3 锁的概念(1)
* 相关文章
* ·15.10 SQL0805和SQL0818错误
* ·15.9.12 对重要敏感数据加密
* ·15.9.11 使用LBAC控制数据访问
* ·15.9.10 使用存储过程控制数据访问
* ·15.9.9 使用视图控制数据访问
* 频道热门
* ·Python 3程序开发指南(第二版)
* ·Android开发进阶必读——评《精通Android 2》
* ·谈程序员的思维训练——评《程序员的思维修炼》
* ·6.2.4 创建完全整合的数据类型
* ·4.1 控制结构
发表评论
-
如何使用hibernate
2012-05-24 19:21 0一、选择Hibernate还是iBATIS都有它的道理: H ... -
关于hibernate自动建表和主键的数据类型的关系
2012-02-27 16:18 1108要想让hibernate自动建表, 1、除了 <prop ... -
用Spring+Hibernate链接时,在增删改时会报错: Write operations are not allowed in read-only mod
2011-09-11 19:53 849用Spring+Hibernate链接时,在增删改时会报错: ... -
[转]hibernate延迟加载
2011-04-26 11:41 5382007-12-01 [转]hibernate延迟 ... -
Hibernate利用XDoclet自动生成配置文件
2011-04-18 18:34 773Hibernate利用XDoclet自动生 ... -
如何利用 myeclipse 生成Hibernate 配置文件
2011-04-18 18:13 1220在hibernate中,每个数据表对应的其实是一个实体类,每个 ... -
Hibernate Synchronizer是一个Eclipse插件,可以自动生成*.hbm文件、持久化类和DAOs
2011-04-18 18:00 1866Hibernate Synchronizer是一个Eclips ... -
Hibernate auto produce
2011-04-18 17:52 937Hibernate 中需要class和mapp ... -
使用动态代理实现用AOP对数据库进行操作
2011-04-12 14:11 917使用动态代理实现用AOP对数据库进行操作 2008-03-14 ... -
Hibernate中cascade与inverse属性详解
2011-04-01 16:20 909Hibernate中cascade与inverse属性详解 ... -
事务传播行为种类
2011-03-31 15:31 792事务传播行为种类 Spring在TransactionDef ... -
Hibernate saveOrUpdate分析
2011-03-31 15:30 837* Hibernate s ... -
使用Spring AOP代理方式实现声明式事务的原理
2011-03-31 15:28 1177使用Spring AOP代理方式实 ... -
Hibernate Session缓存概述
2011-03-31 15:27 960* Hibernate Session缓存 ... -
解说Hibernate的工作原理实例
2011-03-31 15:26 843* 解说Hibernate的工作原理实例 ... -
简述Hibernate配置连接池
2011-03-31 15:25 810* 简述Hiber ... -
简单解析J2EE数据持久层设计
2011-03-31 15:24 950* 简单解 ... -
浅析Hibernate Callback接口
2011-03-31 15:23 850* 浅析Hibernate Callbac ... -
概述Hibernate equals()方法
2011-03-31 15:22 744* 概述Hiber ... -
概括潜在的Hibernate性能问题
2011-03-31 15:21 918* 概括潜在的Hibernate性能问题 ...
相关推荐
Transaction Manager(TM) :控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议; Resource Manager(RM) :控制分支事务,负责分支,状态汇报,并接收事务协调器的指令,驱动分支...
Transaction Manager(TM) :控制全局事务的边界,负责开启一个全局事务,并最终发起全局提交或全局回滚的决议; Resource Manager(RM) :控制分支事务,负责分支注册,状态汇报,并接收事务协调器的指令,驱动分支...
这个机制允许开发者通过简单的注解就能控制事务的边界和规则,极大地简化了编程模型。在Spring中,事务管理是通过一系列的拦截器和事务管理器来实现的。当一个被@Transactional注解的方法被调用时,Spring会创建一个...
特征可视化BPMN图中的所有事务边界。 这包括所有BPMN元素,它们都是等待状态,并具有进入连接的边界: 中间捕获消息事件中级捕获计时器事件中间捕获信号事件接收任务用户任务基于事件的网关外部服务任务除了这些元素...
论文研究-会计师事务所风险管理策略: 高阶期望风险视角.pdf, 根据...该研究结果对我国会计师事务所的风险管理决策实务和现有的审计风险理论研究都有一定的借鉴和参考价值.
在泽西岛实施交易边界的示例 ... 这是使用内部使用的的 AOP 函数在资源方法中设置事务边界的示例。 启动 Jersey 从gradlew run开始。 是模拟事务start-commit的示例。 是模拟事务启动-回滚的示例。 执照
春天翻译jpa 使用MySql进行有关Spring事务传播的测试用例-帮助了解事务边界
WCF服务编程,事务流是一个比较好的控制,如何使事务跨服务边界进行传播.
事务要有非常明确的开始和结束点。SqlServer中的每一条select、insert、update、delete语句都是隐式事务的一部分。即使只发出一条语句,也会把这条语句当做一个事务-或执行语句的所有内容或什么都不执行。但是如果...
DFD图转化为变换型及事务型SC图.doc
本地-事务的边界受一位资源管理器的限制; 分布式-此类事务分布在两个或多个资源管理器中; 全局-该项目的主要目的是实现对分布在多个应用程序上的事务的支持。 首先,要实现全局事务,引擎将与资源管理器通过XA...
3.1 系统边界 2 3.2 用户视图 2 四、需求分析 2 4.1 用户需求说明 2 4.1.1 数据需求 2 4.1.2 事务需求 2 4.2 系统需求说明 2 五、数据库逻辑设计 2 5.1 ER图 2 5.2 数据字典 2 5.3 关系表 2 六、数据库物理设计 3 ...
通过整合,可以使用Spring事务管理器对数据库操作进行事务控制,实现数据一致性和事务边界的管理。 注解驱动的开发:MyBatis支持使用注解来配置和描述SQL语句,而Spring提供了注解驱动的开发方式。通过整合,可以...
1、声明式事务配置 * 配置SessionFactory * 配置事务管理器 * 事务的传播特性 * 那些类那些方法使用事务 2、编写业务逻辑方法 * 继承... * 关于事务边界的设置,通常设置到业务层,不要添加到Dao上
#Spring 扭矩 Tx ... 这样事务边界由 Spring 严格控制。 只有通过 Torque API 引发的回滚才会将 spring 事务标记为回滚。 为了创建事务,Spring 中的事务管理器必须能够首先获得 JDBC 连接。 使用 T
* spring的事务管理需要添加到业务逻辑上(事务边界的定义),不要回到Dao上 技术提示: 在编写经下代码时: *" propagation="REQUIRED"/> *" propagation="REQUIRED"/> *" propagation="REQUIRED"/> *" ...
3、确定系统范围和边界。 4、确定用户视图。 二、可行性分区: 1、经济可行性。 2、技术可行性。 3、操作可行性。(各种人员资源,常考选择题) 4、开发方案选择。 三、数据字典: 1、数据项。 2、数据结构。 3、...
spring特有的事务传播行为,spring支持7种事务传播行为,确定客户端和被调用端的事务边界(说得通俗一点就是多个具有事务控制的service的相互调用时所形成的复杂的事务边界控制),这篇文章主要给大家介绍了关于...
24.7 T/TCP:为事务用的TCP扩展 265 24.8 TCP的性能 267 24.9 小结 268 第25章 SNMP:简单网络管理协议 270 25.1 引言 270 25.2 协议 270 25.3 管理信息结构 272 25.4 对象标识符 274 25.5 管理信息库介绍 274 25.6 ...