Ръководство за потребителя

DB2 инициализиращата ключова дума CLISCHEMA

DB2 Universal Database осигурява редица CLI/ODBC инициализиращи ключови думи, които могат да се използват за ограничаване на количеството данни, които ще се върнат от първоначалните API обръщения по време на етапа на "събиране на информация" при първото свързване към базата данни. Тези ключови думи могат да се определят от:

  1. Ръчно редактиране на файла db2cli.ini.
  2. Променяне на ODBC/CLI настройките за базата данни с помощта на Асистента за конфигуриране на клиент (на платформите, които го поддържат).
  3. Обновяване на CLI конфигурацията на базата данни с помощта на DBA интерфейса за обработка на команди.
Ключовите думи са:
   - DBNAME
   - TABLETYPE
   - SCHEMALIST
   - SYSSCHEMA
   - CLISCHEMA

С изключение на информацията за CLISCHEMA тези ключови думи са документирани в помощта на CLI/ODBC и CLI Ръководство и справочник. Останалата част от тази дискусия се отнася само за използването на CLISCHEMA.

Това е документацията за CLISCHEMA, която в скоро време ще се добави към CLI Ръководство и справочник:

  db2cli.ini Синтаксис на ключовата дума:  CLISCHEMA = cli схема
 
  Стойност по подразбиране:            Не са посочени алтернативи.
 
  Етикет от DB2 CLI/ODBC Настройки:  Няма.  

Използване

Опцията CLISCHEMA посочва алтернативна схема, таблици и множество индекси, в които да се търси вместо в схемите SYSIBM (или SYSTEM, QSYS2), когато се извикват DB2 CLI и ODBC каталожни функции за получаване на информация за каталога.

Например, ако определите 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 потребителски таблици, се осигурява под формата на по-рано недокументираната команда bldschem на интерфейса за команден ред (CLI) и може да се намери като: /samples/cli/db2cli.exe. Документация за db2cli.exe, която не включва командата bldschem, може да се намери в: /samples/cli/INTCLI.DOC.

Например, за да изградите множеството от потребителски таблици, необходими за работа с CLISCHEMA='SERGE', за името на таблица STAFF, притежавано от собственика на схема (създател) USERID в базата данни SAMPLE, ще изпълните следната команда след изпълнението на 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 <номер_указател> <стойност_CLISCHEMA> <собственик_схема> <име_таблица>
Където:
   - <номер_указател> трябва да е 1
 
   - <стойност_CLISCHEMA> трябва да е същата като името на схемата, определено с
        ключовата дума CLISCHEMA
 
   - <собственик_схема> е създателят на таблицата
 
   - <име_таблица> може да е име на потр. таблица, изглед, псевдоним, синоним
        или име на системна таблица.
      (Позволени са глобални символи).

Ако впоследствие изпълните следващия пример чрез db2cli.exe, към създадените в предишния пример потребителски таблици SERGE.* ще добавите редове, които отразяват данните в таблиците на системния каталог за всяка таблица, за която FRED и BERT са собствениците на схема.

   bldschem 1 SERGE FRED %
   bldschem 1 SERGE BERT % 

Когато впоследствие CLI/ODBC ключовата дума CLISCHEMA се установи на SERGE, при обработката на ODBC/CLI приложения спрямо базата данни SAMPLE ще се изпълняват обръщения към множеството таблици SERGE.* вместо към таблиците от системния каталог.


[ Начало на страницата | Предишна страница | Следваща страница ]