快速业务通道

构建跨越联合数据的实体EJB - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
ACLEUSER1'')

除去 altER TABLE 语句。

构建跨越联合数据的实体EJB(5)

时间:2011-01-28 IBM C.M. Saracco

下面是来自作者的测试环境的一个完整示例:

-- Generated by Relational Schema Center of WSADIE CREATE SCHEMA user1; CREATE TABLE user1.FOOBAR   (ID INTEGER NOT NULL,    NAME VARCHAR(250)); ALTER TABLE user1.FOOBAR   ADD CONSTRAINT FOOBARPK PRIMARY KEY (ID); -- Revised DDL CREATE TABLE user1.FOOBAR   (ID INTEGER PRIMARY KEY NOT NULL ,    NAME VARCHAR(250))    OPTIONS (REMOTE_SERVER ''ORACLE8'',        REMOTE_SCHEMA ''ORACLEUSER1'')

可以在 DB2 命令窗口(Command Window)中、在 DB2 命令行(Command Line)上、或通过 DB2 命令中心(Command Center)(可通过 DB2 控制中心(Control Center)进入)执行修改后的DDL 语句。

创建跨越多个数据源的CMP 实体 bean

联合 DBMS 技术一个特别有趣的方面在于它能表示来自多个远程数据源的数据,就好象该数据是单一的本地管理的对象的一部分。管理员可以创建这样的视图:视图可以连接或合并来自多个表(或其它数据表现形式)的数据,而这些表驻留在由不同供应商制造的多个数据服务器上。对于 EJB 程序员来说,这提供了新的数据建模机会。可以较容易地构建单个 CMP 实体来跨越多个数据源。由于关系 DBMS 常见的视图更新约束,这样的bean 本质上是只读的,尽管如此,它们仍然提供了通过标准 EJB 技术集成全异数据的方法。在本节中,我们将讨论程序员如何用 WSADIE 通过三个步骤来构建这样的bean:

步骤 1:根据别名创建视图

步骤 2:为视图创建 CMP 实体 bean

步骤 3:修改生成的代码

步骤 1:根据别名创建视图

同任何关系 DBMS 一样,DB2 使管理员能够创建跨越多个表的数据视图。DB2的联合数据库技术扩展了视图的能力,因而它们可以包含来自多个服务器以不同本机格式存储的数据。要构建这样的视图,首先要为远程数据对象创建期望的别名。然后使用 SQL 创建一个连接或合并这些别名的视图。

在我们的环境中,我们利用 DB2的DDL 透明特性在 Oracle 和 SQL Server 数据库中创建表,并在我们的DB2 联合数据库中创建这些表的别名。

我们发出以下语句:create table orarest (   id int primary key not null,   name varchar(20),   cuisine varchar(20),   budget int)   options (remote_server ''ORACLE8'',       remote_schema ''ORACLEUSER1'') create table msrest (   id int primary key not null,   name varchar(20),   cuisine varchar(20),   budget int)   options (remote_server ''MSSQL'',       remote_schema ''MSUSER1'')

构建跨越联合数据的实体EJB(6)

时间:2011-01-28 IBM C.M. Saracco

这使得下面的对象将被创建:

远程 Oracle 数据库中的ORAREST 表

DB2 联合数据库中的ORAREST 别名

远程 MS SQL Server 数据库中的MSREST 表

DB2 联合数据库中的MSREST 别名。

我们创建一个合并这两个别名的视图:create view multirest (id, name, cuisine, budget) as   select id, name, cuisine, budget from orarest   union   select id, name, cuisine, budget from msrest

然后,我们使用该视图作为 CMP 实体 bean的基础(在下一节描述)。

步骤 2:为视图创建 CMP 实体 bean

创建视图后,您可以用 WSADIE 创建一个 CMP 实体 bean 来表示这一数据。其过程与 为现有的别名创建 CMP 实体 bean 中概括的方法非常相似。然而,如前所述,这样的视图本质上是只读的。如果您接受

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号