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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

servlet返回数据给html_Servlet 简介

Servlet 简介 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 简介 Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作…

linux 64位 寻址空间_Ubuntu 20.04(64位)如何配置gcc-3.4用于编译linux-0.11

首先下载gcc-3.4地址:http://old-releases.ubuntu.com/ubuntu/pool/main/g/gcc-3.4/下载三个文件,分别是cpp-3.4_3.4.6-6ubuntu2_amd64.debgcc-3.4-base_3.4.6-6ubuntu2_amd64.debgcc-3.4_3.4.6-6ubuntu2_amd64.deb也可打开想要保存到的文件夹后&#xf…

发布一个jQuery插件:formStorage

中午休息时,没有睡意,没事写了个jquery插件:formStorage. 原理很简单,通过本地存储机制(userData或者localStorage),存储表单中元素的状态到本地. 需要时可以把所存储的状态还原到表单元素上. 其中也用了json数据格式, 之前想对插件中所需的功能,从零开始写,但是觉得太冗余,没必…

判断一个java对象中的属性是否都未赋值_100道Java基础面试题(一)

100道Java基础面试题(一)未来大家将步入职场,面试的时候面试官还会问大家一些Java相关的问题。小编整理出100道非常实用的面试题目,可以帮助双体的小伙伴应对面试,我们一起来看看都有哪些吧!1.什么是B/S架构?什么是C/S…

电脑cpu温度过高怎么办_网络资讯:电脑cpu占用过高处理办法

今天来说一下电脑cpu占用过高处理办法这方面的一些讯息,不少朋友对电脑cpu占用过高处理办法这方面的一些讯息颇感兴趣的,小编今天就整理了一些信息,希望对有需要的朋友有所帮助。1、安装并使用杀毒软件全面杀毒;2、优化系统自启动软件;3、把软…

大型企业用什么orm_生产企业ERP有什么用

原标题:生产企业ERP有什么用生产企业ERP有什么用?随着我国经济的快速发展,这促使了许多企业或转型开发新的业务模式,以更快速度迈向新兴前沿领域。在这样的环境下,许多的生产型企业对ERP系统进行了实施。生产企业ERP到…

怎么测试网络带宽_性能测试案例与经验分享

性能基准测试性能基准测试,通常被称为 Performance Benchmark Test,是每次对外发布产品版本前必须要完成的测试类型。性能基准测试,会基于固定的硬件环境和部署架构(比如专用的服务器、固定的专用网络环境、固定大小的集群规模、相…

微服务跨数据库联合查询_MySQL数据库联合查询

大家好,我是anyux。数据库联表查询很重要,内联查询更是尤为重要。需要将school.sql文件导入到数据库中数据库多表联合查询,school库下表的逻辑结构关系都在下图中。可以通过驱动表加子表配合实现所有查询要求。统计zhang3,学习了几门课select…

mos 控制交流_电机控制器母线电容的设计选型

母线电容的定义在电机控制器中,电池包的直流电作为输入电源,需要通过直流母线与电机控制器连接,该方式叫DC-LINK或者直流支撑,其中的电容我们称之为母线电容或者支撑电容或者DC-Link电容。由于电机控制器从电池包得到有效值或者峰…

方法的返回值类型是object_JavaScript中如何判断类型

1. typeoftypeof (整数/小数/自然对数Math.LN2/正无穷大数Infinity) > numbertypeof NaN > numbertypeof (function(){}) > functiontypeof Math.sin > functiontypeof undefined > undefinedtypeof xxxx > stringtypeof > stringtypeof true/false >…

c++代码整洁之道pdf_别再问如何用Python提取PDF内容了!

公众号后台回复“图书“,了解更多号主新书内容作者:陈熹来源:早起Python导读大家好,在之前的办公自动化系列文章中我们已经详细介绍了👉如何使用Python批量处理PDF文件,包括合并、拆分、水印、加密等操作。…

vim编辑模式_sublime vim模式和快捷键

vim的四种模式及模式切换vim一共有4个模式&#xff1a;正常模式 (Normal-mode) 插入模式 (Insert-mode)命令模式 (Command-mode)可视模式 (Visual-mode)正常模式启动vim后默认处于正常模式。不论位于什么模式&#xff0c;按下<Esc>键(有时需要按两下&#xff09;都会进入…

python读取txt文件_python实现读写txt文件的几种方法

一、读写模式&#xff1a;w&#xff1a;向文件中写入内容&#xff0c;w会清空原来文本内容a&#xff1a;向文件中追加内容r&#xff1a;从文件中读取内容wb&#xff1a;以二进制形式写入内容。rb&#xff1a;以二进制形式读文件内容ab&#xff1a;以二进制形式追加内容a、r、w&…

centos7升级openssh

注意&#xff1a; openssl版本(openssl版本要大于1.0.1&#xff0c;zlib版本要大于1.1.4) 一、安装依赖包 yum -y install gcc make perl # zlib zlib-devel yum install -y gcc openssl-devel pam-devel rpm-buildyum install telnet-ser…

java 复制对象_Java程序员必备:序列化全方位解析

前言 相信大家日常开发中&#xff0c;经常看到Java对象“implements Serializable”。那么&#xff0c;它到底有什么用呢&#xff1f;本文从以下几个角度来解析序列这一块知识点~什么是Java序列化&#xff1f;为什么需要序列化&#xff1f;序列化用途Java序列化常用API序列化的…

decimal类型对象里面定义什么类型_奥斯塔罗 单身开启桃花雷达 现阶段的我适合什么类型的对象?...

相信单身朋友总好奇下一位对象是否出现了&#xff1f;或是这么多人我该如何察觉下一位对象呢&#xff1f;如果单身的你正寻找对象中那就跟奥斯老师一起来看看下一位对象的个性与特征吧&#xff01;&#xff1c;&#xff1c;直觉选一张牌&#xff1e;>牌l选择到这组牌的朋友&…

win7系统怎么拷贝到u盘_Win7系统电脑无法识别U盘启动盘怎么办?

U盘想必大家不会陌生&#xff0c;通常会用来存储一些资料便于移动办公&#xff0c;有些小伙伴也会将其变更成U盘启动盘&#xff0c;帮助电脑重装系统。但是有用户反馈U盘插入电脑后无法识别启动&#xff0c;这要怎么办呢&#xff1f;其实很简单&#xff0c;下面小编就给大家带来…

数据库日志

很多时候需要追踪记录的变更情况&#xff0c;AX里有数据库日志来完成这件事情&#xff0c;操作路径为:系统管理->设置->数据库日志.如果按照向导添加后没看到相应的记录&#xff0c;可以尝试如下方法&#xff0c;选中生命科学电子签名。系统管理->设置->系统->配…

Nginx的应用之安装配置

一、Nginx简述 Nginx是一个开源且高性能、可靠的Http Web服务、代理服务。 开源: 直接获取源代码 高性能: 支持海量并发 可靠: 服务稳定 我们为什么选择 Nginx服务 Nginx非常轻量 功能模块少 (源代码仅保留http与核心模块代码,其余不够核心代码会作为插件来安装) 代码模块化 (易…

包含以下字段的 struct 怎么解决_S7-300/400进阶笔记4-2:STEP7的“结构”STRUCT数据类型的用法...

复杂数据类型是由基本数据类型通过一定的规则&#xff0c;有机结合在一起&#xff0c;形成的新的、复杂数据类型&#xff0c;STEP7中定义了以下几种复合数据类型&#xff1a;本文&#xff0c;我们介绍一下结构——STRUCT。STRUCT表示由一个不同数据类型的数据组合在一起&#x…