对DB2数据库提供的2种DB连接方式描述

此文章主要向大家讲述的是DB2数据库提供的2种DB连接方式type1与type2,在type1连接中connect 将断开已连接好的DB2,其一个事务只允许连接一个库,在type2连接中connect保留已连接好的数据库,并连接一个新库,这样的事务叫分布式工作单元。

两种方式都不允许AP同时对一个DB进行多次连接!

以下是偶在CLP下做的type2的实验:

 
 
 
  1. QUOTE:  
  2. $ db2 list applications  

授权标识 应用程序名 应用程序 应用程序标识 DB 代理进程

句柄 名称 序列号

 
 
 
  1. DB2ADMIN db2dasstm.exe 10 *LOCAL.DB2.00A180010035 DWCTRLDB 1   
  2. DB2ADMIN db2dasstm.exe 9 *LOCAL.DB2.00A180010034 DWCTRLDB 1   
  3. DB2ADMIN db2dasstm.exe 8 *LOCAL.DB2.00A180010020 DWCTRLDB 1   
  4. $ db2 connect to otherdb  

数据库连接信息

 

数据库服务器 = DB2数据库/NT 8.1.2

SQL 授权标识 = DAVID

本地数据库别名 = OTHERDB

 
 
 
  1. $ db2 connect to sample 

数据库连接信息

数据库服务器 = DB2/NT 8.1.2

SQL 授权标识 = DAVID

本地数据库别名 = SAMPLE

$ db2 list applications

授权标识 应用程序名 应用程序 应用程序标识 DB 代理进程

句柄 名称 序列号

 
 
 
  1. DAVID db2bp.exe 22 *LOCAL.DB2.012480161735 SAMPLE 1   
  2. DB2ADMIN db2dasstm.exe 10 *LOCAL.DB2.00A180010035 DWCTRLDB 1   
  3. DB2ADMIN db2dasstm.exe 9 *LOCAL.DB2.00A180010034 DWCTRLDB 1   
  4. DB2ADMIN db2dasstm.exe 8 *LOCAL.DB2.00A180010020 DWCTRLDB 1   
  5. $ db2 set client connect 2  

DB20000I SET CLIENT 命令成功完成。

 

 
 
 
  1. $ db2 connect to otherdb 

数据库连接信息

数据库服务器 = DB2/NT 8.1.2

SQL 授权标识 = DAVID

本地数据库别名 = OTHERDB

 
 
 
  1. $ db2 list applications 

授权标识 应用程序名 应用程序 应用程序标识 DB 代理进程

句柄 名称 序列号

 
 
 
  1. DAVID db2bp.exe 23 *LOCAL.DB2.012480161849 OTHERDB 1   
  2. DAVID db2bp.exe 22 *LOCAL.DB2.012480161735 SAMPLE 1   
  3. DB2ADMIN db2dasstm.exe 10 *LOCAL.DB2.00A180010035 DWCTRLDB 1   
  4. DB2ADMIN db2dasstm.exe 9 *LOCAL.DB2.00A180010034 DWCTRLDB 1   
  5. DB2ADMIN db2dasstm.exe 8 *LOCAL.DB2.00A180010020 DWCTRLDB 1 

以上测试没测试事务提交,如果测试,要把command option的自动提交关掉,就可以测试一个事务中的多个DB数据库的连接和修改!另外type2的连接有三种方式:syncpoint onephase(默认)、syncpoint twophase、syncpoint none。

 

使用type2连接,可以在一个命令窗口里打开多个连接,但是在执行操作的时候只对最后一个连接有效。如果想切换可以使用set connection ;

【编辑推荐】

  1. Oracle数据库和DB2取前10条记录的实际对比
  2. OracleDB2 存储过程的创建
  3. 对Oracle SQL到DB2 SQL移植的浅析
  4. 详解在DB2中如何联合Oracle数据
  5. 详解DB2中联合SQL Server数据
THE END