用户指南

DB2 CLISCHEMA 初始化关键字

“DB2 通用数据库”提供了一些 CLI/ODBC 初始化关键字, 它们可用来限制在首次连接数据库后的“信息收集”阶段由初始 API 调用返回的数据量。 这些关键字可通过下列操作来设置:

  1. 人工地编辑 db2cli.ini 文件。
  2. 使用“客户机配置辅助程序”(在那些支持它的平台上)更改数据库的 ODBC/CLI 设置。
  3. 使用“DBA 命令行界面”来更新数据库 CLI 配置。
这些关键字有:
   - DBNAME
   - TABLETYPE
   - SCHEMALIST
   - SYSSCHEMA
   - CLISCHEMA

除 CLISCHEMA 的信息之外, 其他关键字都在 CLI/ODBC 帮助和 CLI Guide and Reference 中做了说明。此讨论的余下部分仅与 CLISCHEMA 的使用相关。

此处为 CLISCHEMA 的文档说明,它将在适当的时候添加至 CLI Guide and Reference

  db2cli.ini Keyword Syntax:  CLISCHEMA = clischema
 
  Default Setting:            No alternatives specified.
 
  DB2 CLI/ODBC Settings Tab:  Not present.  

用法注释

CLISCHEMA 选项指示:在发出 DB2 CLI 和“ODBC 目录函数” 调用以获取目录信息时,将不搜索 SYSIBM(或 SYSTEM、QSYS2), 而是搜索替代的模式、表和索引集。

例如,如果指定 CLISCHEMA='SERGE', 则通常引用系统表的内部 CLI/ODBC API 调用将变为引用下列用户表:

   - SERGE.TABLES
   - SERGE.COLUMNS
   - SERGE.SPECIALCOLUMNS
   - SERGE.TSTATISTICS
   - SERGE.PRIMARYKEYS
   - SERGE.FOREIGNKEYS
   - SERGE.TABLEPRIVILEGES
   - SERGE.COLUMNTABLES
   - SERGE.PROCEDURES
   - SERGE.PROCEDURESCOLUMNS。

这些用户表必须由数据库管理员在 CLISCHEMA 可使用之前进行构建。
注意:DataPropagator 提供了对 CLISCHEMA 的支持,使得“数据库管理员”可以用三种可能的方式来执行此任务:
  1. 在客户机上使用 db2cli.exe。
  2. 在使用 DataPropagator 的服务器上自动执行。
  3. 在服务器上人工执行。
下面的信息说明如何在客户机上执行此任务。

db2cli 和 bldschem 实用程序

提供了一个用来设置 CLISCHEMA 所需的用户表的实用程序, 其格式为先前未归档的“CLI 命令行界面”的 bldschem 支持命令的格式, 其路径为 /samples/cli/db2cli.exe。db2cli.exe 的文档 (不包括 bldschem 支持命令)可在 /samples/cli/INTCLI.DOC 中找到。

例如,要对数据库 SAMPLE 中由模式拥有者(创建者) USERID 拥有的表名 STAFF 构建使用 CLISCHEMA='SERGE' 所需要的用户表集, 您应在发出 db2start 且向 ODBC/CLI 注册数据库后运行以下命令:

   db2cli < addstaff.txt

其中 "addstaff.txt" 包含以下脚本:

   opt callerror on
   opt echo on
   quickc 1 1 sample userid password
   #
   # Repeat next line for each table to add.
   #
   bldschem 1 SERGE USERID STAFF
   #
   # Exit
   #
   killenv 1

此脚本将导致表集 SERGE.*(如上所列示的那样)的创建, 并使用表 USERID.STAFF 的系统目录表数据来填充索引。例如,SERGE.TABLES, 对每一个匹配项将用一个新行来填充它。其他的 bldschem 调用将导致对现存的 SERGE.* 表的追加,并替换现有行。

总的说来, bldschem 支持命令的语法为:

   bldschem <handle_number> <value_of_CLISCHEMA> <schema_owner> <table_name>
其中:
   - <handle_number> 应为 1
 
   - <value_of_CLISCHEMA>
     应与用 CLISCHEMA 关键字指定的模式名相同
 
   - <schema_owner> 是表的创建者
 
   - <table_name> 可为用户表名、视图、别名、同义词或系统表名。
(允许使用通配符)。

随后,如果您通过 db2cli.exe 来运行下列示例,则您将对前面示例中创建的用户表 SERGE.* 进行追加, 添加反映每一个表(FRED 和 BERT 是表的模式拥有者)的系统目录表中的数据的行。

   bldschem 1 SERGE FRED %
   bldschem 1 SERGE BERT % 

随后,当 CLISCHEMA CLI/ODBC 关键字被设置为 SERGE 时,ODBC/CLI 应用程序对 SAMPLE 数据库的处理将引用 SERGE.* 表集,而不是系统目录表。


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]