mwjhw216 发表于 2016-11-18 03:25:50

创建DB2跨库视图步骤

  最近因为工作问题,需要在DB2数据库上创建跨库视图,但从网上查了不少资料都是同一篇文章的copy,以下是本人整理总结并经过测试通过。
  案例描述:
  在dbname数据库中创建dbname1数据库视图。
  步骤(红字标识的是可替换的内容):
  1.连接数据库
  connect to dbname user username using password;
  2. 创建WRAPPER 的 DDL 语句         
CREATE WRAPPER "DRDA"
   LIBRARY 'db2drda.dll'
   OPTIONS (DB2_FENCED'N');
  3. 创建SERVER 的 DDL 语句          
CREATE SERVER tempserver
   TYPE DB2/UDB
   VERSION 8.1
   WRAPPER DRDA
   AUTHORIZATION "username1"
   PASSWORD "password1"
   OPTIONS
   (DBNAME'dbname1');
  上面指定的dbname1是远程数据库的名称,username1和password1是它的用户名及密码。
4. 创建USER MAPPING 的 DDL 语句          
CREATE USER MAPPING FOR db2admin
   SERVER tempserver                           --此处tempserver名称就是步骤3创建的server
   OPTIONS
   (REMOTE_AUTHID'dbname1',
      REMOTE_PASSWORD'password'
   );
  5. 创建跨库视图
  CREATE NICKNAME PERSON FOR tempserver.PERSON;
  create view SYS_PERSON as
select *
from PERSON ;
需要注意,上面语句中NICKNAME和VIEW的名称不能相同。
  在上面创建跨库视图的步骤中还存在几个问题,如果有人清楚请给指点:
   1. 两个数据库如果是建立在不同的机器上,步骤3、4该如何写?
   2. 步骤2、3、4的语句作用是什么?
页: [1]
查看完整版本: 创建DB2跨库视图步骤