DB2 Universal Database udostępnia kilka parametrów inicjujących CLI/ODBC, których można użyć do ograniczenia ilości danych zwracanych przez wywołania początkowego interfejsu API podczas etapu "gromadzenia informacji" po pierwszym połączeniu się z bazą danych. Parametry te można ustawić:
- DBNAME, - TABLETYPE, - SCHEMALIST, - SYSSCHEMA, - CLISCHEMA.
Z wyjątkiem informacji dotyczących parametru CLISCHEMA parametry opisano w pomocy CLI/ODBC i podręczniku CLI Guide and Reference. Dalsze informacje dotyczą tylko parametru CLISCHEMA.
Oto dokumentacja dotycząca parametru CLISCHEMA, która zostanie dodana do podręcznika CLI Guide and Reference:
db2cli.ini Keyword Syntax: CLISCHEMA = clischema Default Setting: No alternatives specified. DB2 CLI/ODBC Settings Tab: Not present.
Opcja CLISCHEMA wskazuje alternatywny schemat, tabele i zbiór indeksów, które mają być przeszukiwane zamiast schematów SYSIBM (lub SYSTEM, QSYS2), gdy są wykonywane wywołania interfejsu DB2 CLI i funkcji katalogów ODBC w celu otrzymania informacji o katalogach.
Jeśli na przykład podano CLISCHEMA='SERGE', wywołania wewnętrznego interfejsu CLI/ODBC API, które zwykle odnoszą się do tabel systemowych, będą odnosiły się do następujących tabel:
- SERGE.TABLES - SERGE.COLUMNS - SERGE.SPECIALCOLUMNS - SERGE.TSTATISTICS - SERGE.PRIMARYKEYS - SERGE.FOREIGNKEYS - SERGE.TABLEPRIVILEGES - SERGE.COLUMNTABLES - SERGE.PROCEDURES - SERGE.PROCEDURESCOLUMNS.
Zanim będzie można użyć CLISCHEMA podane tabele użytkowników muszą zostać zbudowane przez administratora baz danych.
Uwaga: | DataPropagator obsługuje CLISCHEMA, tak aby administrator baz danych mógł
wykonać to zadanie na trzy możliwe sposoby:
|
Program narzędziowy służący do konfigurowania tabel użytkowników, które są wymagane przez CLISCHEMA, dostarczane jest w postaci poprzednio nieudokumentowanej komendy obsługi bldschem interfejsu wiersza komend (CLI). Komenda ta jest dostępna jako /samples/cli/db2cli.exe. Dokumentacja na temat db2cli.exe, bez komendy obsługi bldschem, znajduje się w pliku: /samples/cli/INTCLI.DOC.
Aby zbudować tabele użytkowników wymagane do pracy z CLISCHEMA='SERGE' dla tabeli o nazwie STAFF, której właścicielem jest właściciel schematu (twórca) USERID w bazie danych SAMPLE, należy po uruchomieniu db2start i po zarejestrowaniu bazy danych w ODBC/CLI uruchomić następującą komendę:
db2cli < addstaff.txt
gdzie "addstaff.txt" zawiera następujący skrypt:
opt callerror on opt echo on quickc 1 1 sample userid password # # Powtórz następny wiersz dla każdej dodawanej tabeli. # bldschem 1 SERGE USERID STAFF # # Exit # killenv 1
Ten skrypt spowoduje utworzenie zbioru wymienionych wyżej tabel SERGE.* z indeksami. Tabele te są wypełnione przy użyciu danych tabeli katalogu systemowego dla tabeli USERID.STAFF. Na przykład SERGE.TABLES zostanie wypełniona nowym wierszem dla każdej pasującej pozycji. Dodatkowe wywołania komendy bldschem powodują utworzenie dołączeń do istniejących tabel SERGE.*. Istniejące wiersze są zastępowane.
Oto składnia komendy bldschem:
bldschem <numer_uchwytu> <wartość_CLISCHEMA> <właściciel_schematu> <nazwa_tabeli>Gdzie:
- <numer_uchwytu> powinien być równy 1 - <wartość_CLISCHEMA> powinna być taka sama, jak nazwa schematu podana za pomocą parametru CLISCHEMA - <właściciel_schematu> to twórca tabeli - <nazwa_tabeli> może być nazwą tabeli użytkownika, widoku, aliasu, synonimu lub tabeli systemowej. (Dopuszczalne są znaki zastępcze).
Jeśli zostanie uruchomiony przedstawiony przykład za pomocą db2cli.exe, to dane będą dołączane do tabel użytkownika SERGE.* utworzonych w poprzednim przykładzie. Dodawane będą wiersze odzwierciedlające dane w tabelach katalogu systemowego dla każdej tabeli, dla której FRED i BERT są właścicielami schematu.
bldschem 1 SERGE FRED % bldschem 1 SERGE BERT %
Gdy parametr CLI/ODBC CLISCHEMA jest kolejno ustawiany na wartość SERGE, przetwarzanie przez aplikacje ODBC/CLI przy użyciu bazy danych SAMPLE będzie odwoływało się do tabeli SERGE.*, a nie do tabel katalogu systemowego.