DB Query Analyzer中的事务管理在DB2中的应用

                  DB Query Analyzer中的事务管理在DB2中的应用

                                                                                     马根峰

                                     ( 广东联合电子收费股份有限公司, 广州 510300)

 

摘要      事务控制是数据库应用系统中的关键技术之一,概述了事务控制的概念以及《DB Query Analyzer》中的事务控制,以一个具体的实例,给出《DB Query Analyzer》中的事务控制在DB2中的使用方法。

关键词    DB Query Analyzer;事务控制;DB2 

 

The  Application of the transactions control in DB2 with DB Query Analyzer

                                                          MA Gen-feng  

           ( GuangDong Unitoll collection incorporated, GuangZhou 510300)

Abstract     Transaction control is one of the key technology in the database application system. Firstly, the thesis give  a  brief introduction to the  conception of the transaction control and the transaction control in DB2 with DB Query Analyzer. Because DB Query Analyzer is a tools for all RDBMS, It is the same way like in DB2 if you process tractions in the other RDBMS except DB2.

Key words   DB Query Analyzer;Transaction control;DB2

 

 

 

1     引言             

         在数据库维护、管理的时候,经常要用到数据库的记录的修改、删除,并且从数据安全角度考虑,只有在确认操作无误后,才向DBMS提交。这就要使用到DBMS的事务管理。

         而《DB Query Analyzer》,作为《万能数据库查询分析器》的英文版本,它基于Windows系统操作系统,支持Windows7、Vista等Windows操作系统。由于《DB Query Analyzer》具有的强大功能、友好的操作界面、良好的操作性、跨越数据库平台的诸多优点,使得使用它来进行各种关系数据库系统的维护、管理与开发变得非常轻松。

         下面我们就通过具体的实例来介绍如何使用《DB Query Analyzer》来进行事务管理。由于《DB Query Analyzer》是一种跨数据库平台的产品,所以对于在其它关系数据库系统中的事务管理,类同于本文中的实例。

 

 

2      事务控制方式

2.1     事务控制

         《DB Query Analyzer》支持两种事务管理模式:

        (1) 自动提交事务:用户不用对事务进行管理,由后台数据库对事务进行管理。平时绝大多数情况下,用户都是采用这种模式。如在进行数据删除时,执行完DELETE后,记录就被删除。

        (2) 手工管理事务:用户自己对事务进行管理。用户通过参数设置可以将事务控制设置为手工管理事务,这样在《DB Query Analyzer》中执行的SQL语句都不会提交,只有在《DB Query Analyzer》中“事务管理”时提交事务,所有的更新与修改才会生效。

 

 

2.2     在DB Query Analyzer中设置事务管理为手工管理模式

         点击 “Tools”下的“Configuration” 菜单,取消选项“Transaction auto commit”的选中状态。并新建窗口2。这时在状态栏中“Transaction autocommit”已经变成“Off”,见图1、图2所示

  

 

                                                        图1   设置事务提交方式

 

 

 



                                                        图2   打开新的窗口,采用手工提交事务的模式

 

 

 

3     事务控制演示

         下面我们就以《DB Query Analyzer》在DB2中的事务管理为例,向大家介绍一下《DB Query Analyzer》中的事务管理。

 

3.1     修改表TB_AREA之前表中的记录

         首先,我们要查询修改DEVELOP模式下修改前表TB_AREA的记录,如图3所示

 

 

                                                         图3   修改前表TB_AREA中的记录

 

 

 

3.2     修改表TB_AREA中的记录

         接着,我们在手工提交事务的窗口2,修改表TB_AREA中的记录,将“测试区域”的AREASERVERIP值由“ 10.10.10.10”改为“11.11.11.11”,并以只读锁来访问表TB_AREA,可以看到窗口2中记录已发生了变化,如图4所示;而再执行窗口1中的查询语句,由于查询时没有加R(只读锁)则查询不到结果,表明表TB_AREA中有未提交的事务,如图5所示。

 

 

                                                        图4   修改表TB_AREA中的记录

 

 

 

 



                                                        图5   表TB_AREA中有未提交或回退事务,所以在其它会话中只能以R锁来查询该表

 

 

3.3     取消事务

         切换至窗口2,点击菜单“Query”中的“Transaction Manager”,系统会弹出一个消息框。提示当前窗口中可能存在事务,提交事务,请点击是,回滚事务请点击否;什么都不做点击取消,如下图所示:

 

 

                                                        图6   事务管理提示

 

 

         在此,我们点击否,取消刚才的修改操作。在窗口1执行查询,发现表TB_AREA中“测试区域”的AREASERVERIP值还是“10.10.10.10”,如图7所示

 

 

                                                        图7   回滚事务后进行的查询

 

 

 

3.4     提交事务

         重做3.2步骤来修改记录,然后再切换至窗口2,点击菜单“查询”中的“事务管理”,并点击是来提交事务(参见图5)。

然后在窗口1中执行查询,发现表TB_AREA中“测试区域”的AREASERVERIP值改为“11.11.11.11”,如下图所示:

 

 

                                                        图8   提交事务后进行的查询

 

 

 

 

4     结束语

         事务管理是数据库维护、管理、开发的过程中经常要使用的操作。每一个程序员都希望方便、安全地进行数据库的事务操作,而《DB Query Analyzer》则正是满足了这种要求。

 

 

                                  参考文献:

[1]  张龙祥,黄正端,陶影  · 数据库原理与设计 · 成都:西南交通大学出版社,1995.

[2]  马根峰 · ActiveX数据对象之事务控制在VB和DELPHI中的应用· 郑州:信息工程大学学报2001.

[3]  马根峰 · 万能数据库查询分析器中的事务管理在Oracle中的应用· 上海:微型电脑应用2008.

 

 

转载于:https://www.cnblogs.com/wuyida/archive/2012/01/15/6300836.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值