使用DB2联合数据库,您可以使用一条SQL语句查询多个数据源中的数据。奇妙的是,这些数据源可以多种多样:即可以是多种关系数据库系统,也可以是非关系数据库系统,比如Microsoft Excel
、xml等。本文将首先探讨多个关系数据库之间的联合访问。
我们不如先来动手配置一个简单的联合数据库实例来培养一下您的成就感,这样可以为您理解联合数据库所设计的概念及繁多的参数选项增加一点信心。我一向喜欢这种文章风格,我相信很多人也会喜欢的。
要进行下面的试验,您必须先安装DB2 v8.2 ESE (Enterprise Server Edition) for Windows。DB2的安装不是本文的讨论范围。
假如您的DB2已经安装好了,那就开始吧。
1) 使用windows管理员权限的用户登陆windows,笔者用的是Administrator。
2) 为了完成下面的演示,您还需要另外一个windows用户,笔者使用安装DB2的时候自动创建的db2admin用户。您当然也可以使用其他windows用户。
3) 确保您已经创建了至少一个可用的实例。笔者使用缺省创建的DB2实例。您可以通过在命令窗口运行DB2START命令来启动这个实例
4) 在DB2命令窗口运行DB2 GET DBM CFG 来查看当前实例的配置参数,并确保FEDERATED参数设置为YES,您可以通过运行DB2 UPDATE DBM CFG USING FEDERATED YES来设置这个参数。修改这个参数后,必须重新启动实例才会生效(DB2STOP/DB2START)
5) 却保您已经创建了DB2样本数据库SAMPLE,如果您还没有创建,可以通过在DB2命令行窗口运行db2sampl命令来创建它。此样本数据库包含了一些样本表和数据,使用这个数据库作演示可以使我们节省一点时间。
6) 创建另外一个数据库,笔者使用名字TESTDB:
DB2 CREATE DB TESTDB
7) 运行DB2CE命令打开DB2命令编辑器,并在这儿完成下面的步骤。
8) 连接到sample数据库,并创建DRDA包装器(WRAPPER).
CONNECT TO SAMPLE;
CREATE WRAPPER DRDA;
9) 创建服务器(SERVER)
CREATE SERVER TESTDB TYPE DB2/UDB VERSION '8.2' WRAPPER "DRDA" AUTHID "db2admin" PASSWORD "db2admin" OPTIONS( ADD DBNAME 'TESTDB', PASSWORD 'Y');
10) 创建用户映射
CREATE USER MAPPING FOR "ADMINISTRATOR" SERVER "TESTDB" OPTIONS ( ADD REMOTE_AUTHID 'db2admin', ADD REMOTE_PASSWORD 'db2admin') ;
11) 使用db2admin用户连接到TESTDB数据库、创建表WORKITEM、并插入样本数据。
CONNECT TO TESTDB USER db2admin USING db2admin;
CREATE TABLE WORKITEM (
ITEMNO CHAR(4) NOT NULL,
ITEMNAME VARCHAR(50) NOT NULL,
EMPNO CHAR(6),
PRIMARY KEY (ITEMNO)
);
INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0001','测试程序模块1','000010');
INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0002','完成模块2的开发','000020');
INSERT INTO WORKITEM(ITEMNO,ITEMNAME,EMPNO) VALUES ('0003','联系客户A','000030');
12) 连接到SAMPLE数据库,并为TESTDB数据库中的WORKITEM表创建昵称:
CONNECT TO SAMPLE;
CREATE NICKNAME ADMINISTRATOR.WORKITEM FOR TESTDB.DB2ADMIN.WORKITEM;
13) OK,现在我们就可以在SAMPLE数据库中使用TESTDB数据库中的WORKITEM表了,而且还可以和SAMPLE数据库的EMPLOYEE表联合查询:
SELECT * FROM WORKITEM;
我们来查询由谁来负责哪个工作项目:
SELECT A.ITEMNO,A.ITEMNAME,A.EMPNO,B.FIRSTNME,B.LASTNAME FROM WORKITEM A LEFT OUTER JOIN EMPLOYEE B ON A.EMPNO=B.EMPNO;
到此为止,SAMPLE数据库就已经变成了联合数据库,您通过在SAMPLE数据库中为TESTDB数据库中的表或视图创建昵称来访问他们,很好玩吧。:)
分享到:
相关推荐
《DB2 联合数据库II应用程序开发指南》是一本专为DB2用户设计的深入技术书籍,旨在帮助开发者充分利用DB2联合数据库的功能进行高效、可靠的应用程序开发。DB2联合数据库是一种允许用户通过单一访问点操作多个异构...
### DB2联合数据库创建方法详解 #### 手动创建DB2联合数据库的步骤解析 **DB2联合数据库**(Federated Database)是一种允许不同数据库系统之间共享数据的技术。通过这种方式,用户可以从单一的访问点查询分布在多...
这个版本针对的是DB2的8.2更新,它提供了一系列关于如何利用DB2联合数据库功能来整合不同数据库系统、优化数据访问和管理的详细指导。 DB2联合数据库(DB2 Federation)是一种高级的数据集成解决方案,它允许用户...
DB2联合数据库II数据源配置指南是一份详细指导文档,主要针对如何在DB2环境中配置数据源,以实现高效的数据管理和交互。DB2是IBM公司推出的一款强大的关系型数据库管理系统,广泛应用于企业级数据存储和处理。联合...
DB2 联合数据库是分布式数据库管理的特殊形式,在联合数据库系统中,可以通过一个 SQL 命令来发出对多个数据源的命令请求。DB2 与非 DB2 数据库之间进行复制之前,首先需要保证非 DB2 数据源可以被 DB2 ESE Version ...
5. **DB2联合数据库配置实例**: 联合数据库(Federated Database)允许DB2透明地访问和集成不同数据源,如Oracle、SQL Server或非SQL数据。配置联合数据库需要理解DB2的全局数据库目录、数据源定义以及远程数据访问...
DB2联合服务器是实现数据库联合的关键组件。它作为一个中间件,处理来自应用程序的SQL请求,并将这些请求转发到相应的远程数据库系统。联合服务器支持多种数据库协议,如ODBC、JDBC、SQL/CLI等,使其能与非DB2数据库...
DB2 联合数据库是分布式数据库管理的特殊形式。在联合数据库系统中,可以通过一个 SQL 命令来发出对多个数据源的命令请求。DB2 与非 DB2 数据库之间的复制需要用到 WebSphere II。本文通过复制实例让读者对不同...
### 建立db2与oracle联合数据库图文教程详解 #### 概述 本文档旨在指导初学者如何通过db2II工具实现db2与oracle之间的联合数据库配置。此过程涉及跨平台的数据访问与管理,有助于扩展数据库系统的功能性和灵活性。...
#### 一、DB2联合数据库概述 DB2联合数据库功能是一种强大而灵活的数据集成方式,允许用户通过单一的SQL语句来查询和操作多个不同的数据源。这些数据源不仅包括各种关系型数据库系统,如Oracle、SQL Server等,还...
IBM DB2通用数据库是IBM公司开发的一款强大的关系型数据库管理系统,广泛应用于企业级的数据存储和管理。本教程将深入浅出地介绍如何使用SQL(Structured Query Language)与DB2进行交互,帮助初学者掌握基本的...
实验 #1 安装DB2 Express-C,创建 SAMPLE数据库........................................................32 第 4章 – DB2的应用环境............................................................................
### IBM DB2通用数据库SQL入门知识点解析 #### 一、IBM DB2简介 IBM DB2是一种功能强大的关系型数据库管理系统(RDBMS),广泛应用于企业级数据处理领域。它支持多种平台,包括Windows、Linux以及各种UNIX系统等。...
实验 #1 安装DB2 Express-C,创建 SAMPLE数据库........................................................32 第 4章 – DB2的应用环境............................................................................
联合数据库默认不可用,需要使用以下命令将其设置为可用。 ```sql db2updatedbmcfg using federated yes ``` - **更改日志空间大小** 可以通过 `db2UPDATEDBCFGFOR` 命令调整日志空间大小,以防止DB2数据库...
- **注意事项**: 默认情况下,联合数据库功能是禁用的,启用后可以实现跨数据库查询。 #### 十七、更改 DB2 日志空间的大小 - **命令**: `db2 update db cfg for <dbname> using logretain OFF logprimary 3 ...
JDBC、MySQL 和 JDBCProxy 联合实现 Java 数据库 JDBC(Java Database Connectivity)是 Java 语言中用来访问关系型数据库的标准 API, 它提供了一种统一的方式来访问不同的关系型数据库。MySQL 是一种流行的关系型...
OpenSQL是一种特定于SAP的数据库访问语言,它是跨平台的,可以在不同的数据库系统中使用,例如Oracle、DB2、SQL Server等,它提供了一套标准的SQL接口,从而允许开发者在不同数据库系统中编写相同的代码。...
关系数据库逐渐成为主流,代表性产品如IBM的DB2、Oracle、Sybase、Informix,以及微机型产品Dbase、FoxBASE等。数据库技术的广泛应用,为焊接领域提供了数据管理和信息查询的有效工具。 2. 后端数据库设计 在本案例...