Podręcznik Application Development Guide: Call Level Interface (CLI)
|
|
|Parametr konfiguracyjny Trusted_Connection interfejsu CLI/ODBC
|
|
|- Opis parametru:
|- Umożliwia realizację połączenia z bieżącym uwierzytelnionym użytkownikiem.
|
|- Składnia:
|- Trusted_Connection=Yes
|
|
Uwaga:
|Ten parametr nie działa, jeśli zostanie ustawiony w pliku db2cli.ini. Należy zamiast tego podać go w łańcuchu połączenia dla funkcji SQLDriverConnect().
|
|- Ustawienie domyślne:
|- interfejs DB2 CLI używa identyfikatora użytkownika i hasła podanego w łańcuchu połączenia dla funkcji SQLDriverConnect(), a nie bieżącego uwierzytelnionego użytkownika.
|
|- Informacja o użyciu:
|-
|
Aplikacje interfejs DB2 CLI łączące się z bazą danych zazwyczaj łączą się za pomocą funkcji SQLDriverConnect(). Jednym z argumentów wejściowych tej funkcji jest wartość DriverCompletion, która określa, kiedy okno zostanie otwarte. Poniżej zostały podane wartości argumentu DriverCompletion:
|
|- SQL_DRIVER_PROMPT: Okno dialogowe jest zawsze zainicjowane.
|- SQL_DRIVER_COMPLETE: Okno dialogowe jest inicjowane tylko, gdy w łańcuchu połączenia brakuje informacji.
|- SQL_DRIVER_COMPLETE_REQUIRED: Okno dialogowe jest inicjowane tylko, gdy w łańcuchu połączenia brakuje informacji. Wymagane są tylko informacje obowiązkowe. Użytkownik jest pytany tylko o wymagane informacje.
|- SQL_DRIVER_NOPROMPT: Użytkownik nie jest pytany o żadne informacje. Następuje próba połączenia przy użyciu informacji zawartych w łańcuchu połączenia.
|Jeśli brakuje informacji, jest zwracany błąd SQL_ERROR.
|
|Uwaga:
|Szczegółowe informacje o argumencie DriverCompletion można znaleźć w dokumentacji funkcji SQLDriverConnect().
|Niektóre aplikacje, na przykład występujące w środowisku Kerberos, mogą wymagać, aby użytkownik mógł połączyć się z serwerem DB2 UDB bez podawania identyfikatora użytkownika lub hasła.
|Jeśli aplikacja używa opcji SQL_DRIVER_NO_PROMPT w wywołaniu funkcji SQLDriverConnect(), następuje próba połączenia bez uwierzytelnienia użytkownika. Wtedy parametr jest niepotrzebny.
|W przypadku korzystania z aplikacji innej firmy, gdy poziom zapytania używany przez aplikację różni się od SQL_DRIVER_NO_PROMPT, interfejs DB2 CLI otworzy okno z żądaniem podania brakujących informacji.
|Ustawienie parametru Trusted_Connection na wartość Yes poprzez podanie go w wejściowym łańcuchu połączenia dla funkcji SQLDriverConnect() ("Trusted_Connection=Yes") spowoduje, że interfejs DB2 CLI zignoruje dowolny łańcuch identyfikatora użytkownika lub hasła (włącznie z pustymi łańcuchami) w łańcuchu połączenia oraz zignoruje poziom zapytania funkcji połączenia. interfejs DB2 CLI używa bieżącego uwierzytelnionego użytkownika podczas próby połączenia z bazą danych.
|Jeśli próba połączenia nie powiedzie się, użytkownik zostanie zapytany o identyfikator użytkownika i hasło.
|Ten parametr jest używany tylko w łańcuchu połączenia funkcji SQLDriverConnect(), ustawienie go w pliku
|db2cli.ini nie ma żadnego skutku.
|
|
Aktualizacja tabeli diagnostycznej dla funkcji
SQLDescribeParam (CLI)
Funkcja SQLDescribeParam() zwraca opis znacznika parametru
powiązanego z przygotowaną instrukcją SQL.
W tabeli diagnostycznej został zaktualizowany stan SQLSTATE HYC00.
Diagnostyka
Tabela 24. Stany SQLSTATE funkcji SQLDescribeParam
SQLSTATE |
Opis |
Wyjaśnienie |
HYC00 |
Sterownik nie może wykonać operacji |
Procedury zapisane w bazie dla funkcji schematu są niedostępne na tym
serwerze.
Zainstaluj je na serwerze i upewnij się, że są dostępne. |
Asynchroniczne wykonywanie funkcji interfejsu
CLI
Interfejs CLI (Call Level Interface) programu DB2 (DB2 CLI) umożliwia
asynchroniczne uruchamianie pewnego podzbioru funkcji.
Sterownik interfejsu DB2 CLI zwraca sterowanie do aplikacji po wywołaniu
funkcji, ale zanim funkcja zakończy działanie. Funkcja zwraca wartość
SQL_STILL_EXECUTING za każdym razem, gdy jest wywoływana, aż zakończy
działanie, kiedy to zwraca inną wartość (na przykład SQL_SUCCESS).
Wykonywanie asynchroniczne jest korzystne tylko w jednowątkowych systemach
operacyjnych. Aplikacje działające w wielowątkowych systemach operacyjnych
powinny uruchamiać funkcje w osobnych wątkach. Asynchronicznie
można wykonywać te funkcje, które podczas normalnej pracy wysyłają żądanie do serwera, a
następnie czekają na odpowiedź. Funkcja działająca asynchronicznie zamiast
czekać zwraca sterowanie do aplikacji. Aplikacja może wykonywać inne zadania
albo zwrócić sterowanie do systemu operacyjnego i przy użyciu przerwania
odpytywać okresowo funkcję do czasu uzyskania kodu powrotu innego niż
SQL_STILL_EXECUTING.
Obsługa wykonywania asynchronicznego funkcji interfejsu CLI jest dostępna w
programie DB2 Universal Database (UDB), począwszy od wersji 8.2 z pakietem
poprawek 1 (odpowiednika wersji 8.1 z pakietem poprawek 8). Dokumentację tej
opcji można znaleźć w Centrum informacyjnym programu DB2 UDB, wersja 7, pod
adresem
http://publib.boulder.ibm.com/infocenter/db2v7luw/index.jsp. Wszystkie informacje z dokumentacji wersji 7 odnoszą się również do
wersji 8.2 z pakietem poprawek 1 (odpowiadającej wersji 8.1 z pakietem poprawek
8) i nowszych. Centrum informacyjne programu DB2, wersja 8, nie zawiera żadnej
dokumentacji dotyczącej tej opcji.
Atrybut połączenia SQL_ATTR_PING_DB
SQL_ATTR_PING_DB (DB2 CLI, wersja 8.2)
Atrybut SQL_ATTR_PING_DB jest to 32-bitowa liczba całkowita, której używa się łącznie z funkcją
SQLGetConnectAttr() do uzyskiwania czasu odpowiedzi sieci dla
istniejącego połączenia między klientem DB2 UDB a serwerem DB2 UDB. Czas odpowiedzi jest podawany w mikrosekundach.
Jeśli połączenie zostało wcześniej nawiązane, a następnie zerwane przez bazę
danych, zwracana jest wartość 0. Jeśli połączenie zostało zamknięte przez
aplikację, zgłaszany jest stan SQLSTATE 08003. Ten atrybut połączenia może
zostać zwrócony przez funkcję SQLGetConnectAttr(), ale nie można go
ustawiać przy użyciu funkcji SQLSetConnectAttr(). Każda próba ustawienia tego
atrybutu spowoduje otrzymanie stanu SQLSTATE HYC00 (Sterownik nie może wykonać
operacji).
Funkcja SQLBindParameter (CLI)
W dokumentacji funkcji SQLBindParameter opis parametru wejściowego jest
niepoprawny. Poprawny opis ma następującą postać:
- Parametr wejściowy
- Wartość ColumnSize równa 0 oznacza, że
interfejs DB2 CLI będzie używał maksymalnej długości dopuszczalnej dla typu SQL dostarczanego
jako parametr wielkości kolumny lub procedury zapisanej w bazie. Interfejs DB2
CLI wykona wszelkie niezbędne konwersje, używając tej wielkości.
Funkcja SQLMoreResults (CLI)
W dokumentacji funkcji SQLMoreResults odwołanie do atrybutu instrukcji
SQL_ATTR_ROW_ARRAY_SIZE jest niepoprawne. Poprawnym atrybutem instrukcji
jest SQL_ATTR_PARAMSET_SIZE. Sekcja opisująca składnię powinna wyglądać następująco:
Ta funkcja może być używana do sekwencyjnego zwracania wielu wyników w
tabeli wynikowej w przypadku wykonywania:
- zapytania parametrycznego z tablicą wartości parametrów wejściowych
określonych z atrybutem instrukcji SQL_ATTR_PARAMSET_SIZE i funkcją
SQLBindParameter()
Dodatkowe atrybuty środowiska
Poniższe atrybuty połączenia interfejsu CLI są również obsługiwane jako
atrybuty środowiska interfejsu CLI:
- SQL_ATTR_INFO_ACCTSTR
- SQL_ATTR_INFO_APPLNAME
- SQL_ATTR_INFO_USERID
- SQL_ATTR_INFO_WRKSTNNAME
Informacje na temat tych atrybutów można znaleźć w dokumentacji atrybutów
połączeń interfejsu CLI w Centrum informacyjnym DB2 lub w podręczniku
CLI Guide and Reference Volume 2.
Wymagania dotyczące dynamicznych kursorów przewijalnych
Aby możliwe było wykonywanie operacji aktualizacji i usuwania wierszy w tabeli
wynikowej dynamicznego kursora przewijalnego, instrukcja UPDATE lub DELETE
musi zawierać wszystkie kolumny co najmniej jednego klucza unikalnego w
tabeli podstawowej. Może to być klucz podstawowy lub dowolny inny klucz
unikalny.
Parametr konfiguracyjny RetCatalogAsCurrServer interfejsu CLI/ODBC
- Opis parametru:
- Funkcje katalogu zwracają dla kolumn katalogu wartość CURRENT SERVER
zamiast wartości pustej.
- Składnia parametru w pliku db2cli.ini:
- RetCatalogAsCurrServer= 0 | 1
- Ustawienie domyślne:
- Jeśli docelowy menedżer DBMS zwróci wartość pustą dla kolumn katalogu,
wartość CURRENT SERVER nie zostanie zapełniona.
- Informacja o użyciu:
- Jeśli funkcje katalogu dla docelowego menedżera DBMS zwrócą wartość pustą
dla kolumn katalogu, nadanie parametrowi RetCatalogAsCurrServer wartości 1
spowoduje, że menedżer DBMS zwróci w zamian wartość CURRENT SERVER.
- 0 = funkcje katalogu zwracają wartość pustą dla kolumn katalogu
(domyślnie).
- 1 = funkcje katalogu zwracają wartość CURRENT SERVER zamiast wartości
pustej dla kolumn katalogu.
Załóżmy na przykład, że funkcja katalogu SQLTables() zwraca
tabelę wynikową, w której wartości w kolumnie TABLE_CAT są puste. Nadanie
parametrowi RetCatalogAsCurrServer wartości 1 spowoduje, że menedżer DBMS zwróci
w kolumnie TABLE_CAT wartość CURRENT SERVER.
Uwaga:
Ten parametr jest obsługiwany przez
program DB2 UDB dla systemów Linux, UNIX(R) i Windows(R) w wersji 8.2 z
pakietem poprawek 3 (odpowiednik wersji 8.1 z pakietem poprawek 10) i w
wersjach nowszych.
Parametr konfiguracyjny ReceiveTimeout interfejsu CLI/ODBC
- Opis parametru:
- Określa (w sekundach) czas oczekiwania na odpowiedź serwera przez nawiązane
połączenie, po jakim próba zostanie zakończona i wygenerowany zostanie błąd
przekroczenia limitu czasu komunikacji.
- Składnia parametru w pliku db2cli.ini:
- ReceiveTimeout = 0 | 1 | 2 |
... | 32767
- Ustawienie domyślne:
- Klient czeka przez nieograniczenie długi czas na odpowiedź z serwera przez
nawiązane połączenie.
- Równoważny atrybut połączenia:
- SQL_ATTR_RECEIVE_TIMEOUT
- Informacja o użyciu:
- Wartość domyślna 0 oznacza, że klient będzie czekał na odpowiedź przez
nieograniczenie długi czas. Limit czasu odbioru nie obowiązuje podczas nawiązywania
połączenia; parametr ten jest obsługiwany tylko w przypadku protokołu TCP/IP i
jest ignorowany dla wszystkich innych protokołów.
Atrybut połączenia SQL_ATTR_RECEIVE_TIMEOUT
- SQL_ATTR_RECEIVE_TIMEOUT (interfejs CLI DB2 wersja 8)
- 32-bitowa wartość całkowita określająca w sekundach czas oczekiwania na
odpowiedź serwera przez nawiązane połączenie, po jakim próba zostanie
zakończona i wygenerowany zostanie błąd przekroczenia limitu czasu komunikacji. Wartość domyślna 0 oznacza, że klient będzie czekał na odpowiedź przez
nieograniczenie długi czas. Limit czasu odbioru nie obowiązuje podczas nawiązywania
połączenia; parametr ten jest obsługiwany tylko w przypadku protokołu TCP/IP i
jest ignorowany dla wszystkich innych protokołów. Dozwolone są wartości
całkowite z zakresu od 0 do 32767.
Parametr konfiguracyjny Reopt interfejsu CLI/ODBC
- Opis parametru:
- Włącza optymalizację zapytań lub ponowną optymalizację instrukcji SQL,
które zawierają rejestry specjalne lub znaczniki parametrów.
- Składnia parametru w pliku db2cli.ini:
- Reopt = 2 | 3 | 4
- Ustawienie domyślne:
- W czasie wykonywania zapytania
nie jest przeprowadzana optymalizacja. W odniesieniu do rejestrów specjalnych lub znaczników parametrów używane są
domyślne wartości oszacowane, wybrane przez kompilator.
- Równoważna instrukcja i atrybut połączenia:
- SQL_ATTR_REOPT
- Informacja o użyciu:
- Optymalizacja polega na przypisaniu rejestrom specjalnym lub znacznikom
parametrów wartości dostępnych w czasie wykonywania zapytania zamiast
domyślnych wartości oszacowanych, wybieranych przez kompilator. Poprawne
wartości parametru to:
- 2 = SQL_REOPT_NONE. Jest to ustawienie domyślne. W czasie wykonywania zapytania
nie jest przeprowadzana optymalizacja. W odniesieniu do rejestrów specjalnych lub znaczników parametrów używane są
domyślne wartości oszacowane, wybrane przez kompilator. Do wykonywania dynamicznych instrukcji SQL używany jest domyślny zestaw
pakietów "NULLID".
- 3 = SQL_REOPT_ONCE. Optymalizacja zapytania przeprowadzana jest w czasie
pierwszego wykonania zapytania. Używany jest zbiór pakietów "NULLIDR1"
powiązany przy użyciu opcji wiązania REOPT ONCE.
- 4 = SQL_REOPT_ALWAYS. Optymalizacja lub ponowna optymalizacja przeprowadzana
jest podczas każdego wykonania zapytania. Używany jest zbiór pakietów
"NULLIDRA" powiązany przy użyciu opcji wiązania REOPT ALWAYS.
"NULLIDR1" i "NULLIDRA" to zarezerwowane nazwy zbiorów
pakietów; gdy są one używane, niejawnie ustawiana jest odpowiednio opcja REOPT
ONCE lub REOPT ALWAYS.
Te zbiory pakietów należy utworzyć jawnie przy użyciu następujących komend:
db2 bind db2clipk.bnd collection NULLIDR1
db2 bind db2clipk.bnd collection NULLIDRA
W razie jednoczesnego określenia
parametrów Reopt i CurrentPackageSet, parametr CurrentPackageSet ma
pierwszeństwo.
Instrukcja SQL_ATTR_REOPT i atrybut połączenia
- SQL_ATTR_REOPT (DB2 CLI v8)
- 32-bitowa wartość całkowita, która umożliwia optymalizację zapytań dla
instrukcji SQL zawierających rejestry specjalne lub znaczniki parametrów. Optymalizacja polega na przypisaniu rejestrom specjalnym lub znacznikom
parametrów
wartości dostępnych w czasie wykonywania zapytania zamiast domyślnych wartości
oszacowanych, wybieranych przez kompilator. Poprawne wartości atrybutu to:
- 2 = SQL_REOPT_NONE. Jest to ustawienie domyślne. W czasie wykonywania zapytania
nie jest przeprowadzana optymalizacja. W odniesieniu do rejestrów specjalnych lub znaczników parametrów używane są
domyślne wartości oszacowane, wybrane przez kompilator. Do wykonywania dynamicznych instrukcji SQL używany jest domyślny zestaw
pakietów "NULLID".
- 3 = SQL_REOPT_ONCE. Optymalizacja zapytania przeprowadzana jest w czasie
pierwszego wykonania zapytania. Używany jest zbiór pakietów "NULLIDR1"
powiązany przy użyciu opcji wiązania REOPT ONCE.
- 4 = SQL_REOPT_ALWAYS. Optymalizacja lub ponowna optymalizacja przeprowadzana
jest podczas każdego wykonania zapytania. Używany jest zbiór pakietów
"NULLIDRA" powiązany przy użyciu opcji wiązania REOPT ALWAYS.
"NULLIDR1" i "NULLIDRA" to zarezerwowane nazwy zbiorów
pakietów; gdy są one używane, niejawnie ustawiana jest odpowiednio opcja REOPT
ONCE lub REOPT ALWAYS.
Te zbiory pakietów należy utworzyć jawnie przy użyciu następujących komend:
db2 bind db2clipk.bnd collection NULLIDR1
db2 bind db2clipk.bnd collection NULLIDRA
Atrybuty SQL_ATTR_REOPT i
SQL_ATTR_CURRENT_PACKAGE_SET wykluczają się nawzajem, jeśli zatem jeden z nich
jest ustawiony, użycie drugiego jest niedozwolone.
Parametr konfiguracyjny CurrentPackageSet interfejsu
CLI/ODBC
- Opis parametru:
- Powoduje wywołanie instrukcji SET CURRENT PACKAGESET po każdym połączeniu.
- Składnia parametru w pliku db2cli.ini:
- CurrentPackageSet = nazwa schematu
- Ustawienie domyślne:
- Klauzula nie jest dodawana.
- Równoważny atrybut połączenia:
- SQL_ATTR_CURRENT_PACKAGE_SET
- Informacja o użyciu:
-
Ta opcja powoduje wywoływanie polecenia SET CURRENT PACKAGESET SQL z
wartością CurrentPackageSet po każdym połączeniu z bazą danych. Domyślnie
klauzula ta nie jest dołączana.
Instrukcja SET CURRENT PACKAGESET SQL określa
nazwę schematu (identyfikator kolekcji) używany do wybierania pakietu dla
następnych instrukcji SQL.
Aplikacje CLI/ODBC wywołują dynamiczne instrukcje SQL. Opisywana opcja umożliwia sterowanie uprawnieniami,
z jakimi instrukcje te są wykonywane:
- Wybierz schemat, który ma być używany do uruchamiania instrukcji SQL z
aplikacji CLI/ODBC.
- Dopilnuj, aby obiekty w schemacie miały odpowiednie uprawnienia, a następnie
przeprowadź ponowne wiązanie.
- Ustaw opcję CurrentPackageSet tak, aby wskazywała na ten schemat.
Instrukcje SQL uruchamiane z aplikacji CLI/ODBC będą teraz działały w
tym określonym schemacie ze zdefiniowanymi w nim uprawnieniami.
Następujące
nazwy zbiorów pakietów są zarezerwowane: "NULLID", "NULLIDR1", "NULLIDRA".
W razie jednoczesnego określenia parametrów Reopt i CurrentPackageSet,
parametr CurrentPackageSet ma pierwszeństwo.
Atrybut połączenia SQL_ATTR_CURRENT_PACKAGE_SET
- SQL_ATTR_CURRENT_PACKAGE_SET (DB2 CLI v5)
- Łańcuch znaków zakończony znakiem o kodzie zero określający nazwę schematu
(identyfikator kolekcji) służącego do wybierania pakietu dla następnych
instrukcji SQL.
Ustawienie tego atrybutu powoduje wywołanie instrukcji SQL SET
CURRENT PACKAGESET. Jeśli atrybut ten zostanie ustawiony przed połączeniem,
instrukcja SQL SET CURRENT PACKAGESET zostanie wywołana w czasie połączenia.
Aplikacje CLI/ODBC wywołują dynamiczne instrukcje SQL. Opisywany atrybut
połączenia umożliwia sterowanie uprawnieniami, z jakimi instrukcje te są
wykonywane:
- Wybierz schemat, który ma być używany do uruchamiania instrukcji SQL z
aplikacji CLI/ODBC.
- Dopilnuj, aby obiekty w schemacie miały odpowiednie uprawnienia, a następnie
przeprowadź ponowne wiązanie. Zwykle wymagać to będzie powiązania pakietów CLI
(sqllib/bnd/db2cli.lst) z opcją COLLECTION <id_kolekcji>. Szczegółowe
informacje można znaleźć w opisie komendy BIND.
- Ustaw opcję CURRENTPACKAGESET tak, aby wskazywała na ten schemat.
Instrukcje SQL uruchamiane z aplikacji CLI/ODBC będą teraz działały w
tym określonym schemacie ze zdefiniowanymi w nim uprawnieniami.
Alternatywną
metodą określenia nazwy schematu jest ustawienie parametru konfiguracyjnego
CLI/ODBC CURRENTPACKAGESET.
Następujące nazwy zbiorów pakietów są
zarezerwowane: "NULLID", "NULLIDR1", "NULLIDRA".
Atrybuty SQL_ATTR_REOPT i SQL_ATTR_CURRENT_PACKAGE_SET wykluczają się nawzajem,
jeśli zatem jeden z nich jest ustawiony, użycie drugiego jest niedozwolone.
Parametr konfiguracyjny MapBigintCDefault interfejsu CLI/ODBC
- Opis parametru:
- Określa domyślny typ C kolumn BIGINT i znaczników parametrów.
- Składnia parametru w pliku db2cli.ini:
- MapBigintCDefault = 0 | 1 | 2
- Ustawienie domyślne:
- Domyślna reprezentacja typu C dla danych BIGINT to
SQL_C_BIGINT.
- Informacja o użyciu:
-
Parametr MapBigintCDefault steruje typem C używanym, gdy dla kolumn i
znaczników parametrów typu BIGINT określono reprezentację
SQL_C_DEFAULT. Ten parametr powinien być używany
przede wszystkim z aplikacjami firmy Microsoft, takimi jak Microsoft Access,
które nie obsługują 8-bajtowych liczb całkowitych. Parametr MapBigintCDefault ustawia się w
następujący sposób:
- 0 - dla domyślnej reprezentacji typu C: SQL_C_BIGINT
- 1 - dla domyślnej reprezentacji typu C: SQL_C_CHAR
- 2 - dla domyślnej reprezentacji typu C: SQL_C_WCHAR
Parametr ten ma wpływ na zachowanie funkcji interfejsu CLI, gdzie jako
typ C może być określona reprezentacja SQL_C_DEFAULT, na przykład
SQLBindParameter(), SQLBindCol() i SQLGetData().
Parametr konfiguracyjny DescribeOutputLevel interfejsu CLI/ODBC
- Opis parametru:
- Określa poziom informacji opisowych kolumny wyjściowej, której wymaga
sterownik CLI podczas żądań przygotowania lub opisu.
- Składnia parametru w pliku db2cli.ini:
- DescribeOutputLevel = 0 | 1 | 2 | 3
- Ustawienie domyślne:
- Żąda informacji opisowych wymienionych na poziomie 2 (patrz
Tabela 25).
- Informacja o użyciu:
-
Ten parametr steruje wielkością informacji, których wymaga sterownik CLI w
żądaniach przygotowania lub opisu. Domyślnie, gdy serwer odbiera żądanie
opisu, zwraca w odpowiedzi informacje zawarte na poziomie 2 (patrz
Tabela 25) dla kolumn tabeli wynikowej. Jednak aplikacja może
nie potrzebować wszystkich tych informacji lub może potrzebować informacji
dodatkowych.
Przypisanie parametrowi DescribeOutputLevel poziomu
odpowiedniego dla potrzeb aplikacji może poprawić wydajność, ponieważ
wielkość danych opisu przesyłanych między klientem i serwerem zostaje
ograniczona do minimum wymaganego przez aplikację. Jeśli przypisany
parametrowi DescribeOutputLevel poziom będzie zbyt niski, może to zakłócić
funkcjonowanie aplikacji (zależnie od jej wymagań). Funkcje interfejsu CLI przeznaczone do pobierania informacji opisowych nie
muszą zakończyć działania niepowodzeniem, ale zwrócone przez nie informacje
mogą być niekompletne.
Obsługiwane ustawienia parametru DescribeOutputLevel
to:
- 0 - do aplikacji klienta nie są zwracane żadne informacje opisowe.
- 1 - do aplikacji klienta zwracane są informacje opisowe zaliczane do
poziomu 1 (patrz Tabela 25).
- 2 - (domyślne) do aplikacji klienta zwracane są informacje opisowe
zaliczane do poziomu 2 (patrz Tabela 25).
- 3 - do aplikacji klienta zwracane są informacje opisowe zaliczane do
poziomu 3 (patrz Tabela 25).
W poniższej tabeli przedstawiono listę pól, które tworzą informacje
opisowe zwracane przez serwer w odpowiedzi na żądanie przygotowania lub opisu. Pola
te pogrupowano w poziomy, a parametr konfiguracyjny interfejsu CLI/ODBC
DescribeOutputLevel steruje numerem poziomu informacji, których
żąda sterownik CLI.
Uwaga:
Niektóre serwery DB2 nie obsługują wszystkich poziomów informacji opisowych.
Wszystkie poziomy informacji opisowych są obsługiwane przez następujące serwery DB2: DB2 Universal Database (UDB) dla systemów Linux, UNIX i Windows, wersja 8 i nowsze, DB2 UDB for z/OS, wersja 8 i nowsze oraz DB2 UDB for iSeries, wersja 5 wydanie 3 i nowsze. Wszystkie pozostałe
serwery DB2 obsługują tylko wartości 2 lub 0 parametru DescribeOutputLevel.
Tabela 25. Poziomy informacji opisowych.
Poziom 1 |
Poziom 2 |
Poziom 3 |
SQL_DESC_COUNT
SQL_COLUMN_COUNT
SQL_DESC_TYPE
SQL_DESC_CONCISE_TYPE
SQL_COLUMN_LENGTH
SQL_DESC_OCTET_LENGTH
SQL_DESC_LENGTH
SQL_DESC_PRECISION
SQL_COLUMN_PRECISION
SQL_DESC_SCALE
SQL_COLUMN_SCALE
SQL_DESC_DISPLAY_SIZE
SQL_DESC_NULLABLE
SQL_COLUMN_NULLABLE
SQL_DESC_UNSIGNED
SQL_DESC_SEARCHABLE
SQL_DESC_LITERAL_SUFFIX
SQL_DESC_LITERAL_PREFIX
SQL_DESC_CASE_SENSITIVE
SQL_DESC_FIXED_PREC_SCALE |
wszystkie pola poziomu 1
oraz:
SQL_DESC_NAME
SQL_DESC_LABEL
SQL_COLUMN_NAME
SQL_DESC_UNNAMED
SQL_DESC_TYPE_NAME
SQL_DESC_DISTINCT_TYPE
SQL_DESC_REFERENCE_TYPE
SQL_DESC_STRUCTURED_TYPE
SQL_DESC_USER_TYPE
SQL_DESC_LOCAL_TYPE_NAME
SQL_DESC_USER_DEFINED_
TYPE_CODE |
wszystkie pola poziomów 1,
2 oraz:
SQL_DESC_BASE_COLUMN_NAME
SQL_DESC_UPDATABLE
SQL_DESC_AUTO_UNIQUE_
VALUE
SQL_DESC_SCHEMA_NAME
SQL_DESC_CATALOG_NAME
SQL_DESC_TABLE_NAME
SQL_DESC_BASE_TABLE_NAME |
[ Początek strony |Poprzednia strona | Następna strona | Spis treści ]