Jméno funkce DB2 CLI (API), při jejímž volání došlo k výskytu chyby, se připojuje k chybovému hlášení získanému prostřednictvím funkce SQLGetDiagRec() nebo SQLError(). Jméno funkce je uzavřeno do složených závorek { }.
Příklad:
[IBM][CLI Driver]" CLIxxxx: < text > SQLSTATE=XXXXX {SQLGetData}"
Toto klíčové slovo se používá pouze pro ladění.
Tato volba vám umožňuje povolit nebo zakázat asynchronní provádění dotazů. Zvýhodňuje aplikace, které byly vytvořeny tak, aby byly schopny tuto funkci využívat. Zákaz asynchronního provádění dotazů je vhodný pouze v případě, že vaše aplikace jinak nepracuje správně. Příslušné klíčové slovo je v souboru db2cli.ini umístěno v sekci voleb pro zdroj dat.
Poznámka: | Ovladač CLI/ODBC se bude chovat stejně jako u předchozích verzí standardu DB2, které asynchronní ODBC nepodporovaly. |
Tato volba vám umožňuje určit, zda mají být binární typy dat ODBC (SQL_BINARY, SQL_VARBINARY, SQL_LONGVARBINARY a SQL_BLOB) považovány v sestavách za binární typy dat. Systémy IBM DBMS podporují sloupce s binárními daty vytvořené definováním sloupců CHAR, VARCHAR a LONG VARCHAR s atributem FOR BIT DATA. Databáze DB2 Universal Database podporuje binární data rovněž prostřednictvím typu BLOB (v tom případě je tento typ mapován na typ CLOB).
Uživatelé mohou také potřebovat nastavit tuto volbu, jestliže používají aplikaci DB2 verze 1, která do vyrovnávací paměti SQL_C_CHAR načítá data (LONG) (VAR)CHAR. Ve standardu DB2, verzi 1, jsou data přesouvána do vyrovnávací paměti SQL_C_CHAR beze změny; počínaje verzí 2 jsou data převáděna na reprezentaci ASCII jednotlivých hexadecimálních čísel.
Hodnotu BITDATA = 0 nastavte pouze tehdy, jste-li si jisti, že všechny sloupce definované jako FOR BIT DATA nebo BLOB obsahují pouze znaková data a aplikace není schopna zobrazovat sloupce binárních dat.
Není-li hodnota celým číslem z intervalu 3 až 30, použije se předvolená hodnota bez dalšího upozornění nebo varování.
Toto klíčové slovo se používá ke zvýšení počtu sekcí pro příkazy SQL v aplikacích CLI/ODBC. Je-li použito, administrátor by měl explicitně svázat vyžadované vázané soubory CLI s volbou vázání CLIPKG. Dále je třeba aktualizovat soubor db2cli.ini na serveru (DB2 UDB V6.1 nebo vyšší pro platformy UNIX nebo Intel) stejnou hodnotou volby CLIPKG.
Toto nastavení se týká pouze rozsáhlých balíků (obsahujících 364 sekcí). Počet malých balíků (obsahujících 64 sekcí) je 3 a nelze jej měnit.
Doporučuje se zvýšit počet rozsáhlých balíků pouze tak, aby pokrýval potřeby vaší aplikace, protože balíky zabírají místo v databázi.
Katalog DB2 ODBC je navržen tak, aby zvyšoval rychlost schématických volání pro seznamy tabulek používaných aplikacemi, které se spojují s hostitelskými systémy řízení báze dat pomocí modulu DB2 Connect.
Katalog DB2 ODBC, který je vytvořen a spravován v hostitelském systému řízení báze dat, obsahuje řádky reprezentující objekty definované ve skutečném katalogu DB2; tyto řádky však obsahují pouze sloupce nutné k podpoře operací rozhraní ODBC. Tabulky v katalogu DB2 ODBC jsou předem spojeny a speciálně indexovány tak, aby umožňovaly aplikacím využívajícím rozhraní ODBC rychlý přístup ke katalogu.
Správci systému mohou vytvářet pro katalog DB2 ODBC více pohledů, z nichž každý obsahuje pouze řádky potřebné pro určitou skupinu uživatelů. Každý uživatel si poté zvolí, který pohled katalogu DB2 ODBC chce používat (nastavením tohoto klíčového slova).
Použití klíčového slova CLISCHEMA je pro aplikaci využívající rozhraní ODBC zcela transparentní a lze je použít pro jakoukoli aplikaci využívající rozhraní ODBC.
Vzhledem k tomu, že toto klíčové slovo má některé účinky podobné, jako klíčové slovo SYSSCHEMA, mělo by být raději použito klíčové slovo CLISCHEMA (pokud je to možné).
Použití klíčového slova CLISCHEMA zvyšuje efektivitu při přístupu k datům: Uživatelské tabulky používané klíčovým slovem SYSSCHEMA byly identickými kopiemi tabulek katalogu DB2, takže ovladač ODBC musel pro získání informací vyžadovaných uživatelem rozhraní ODBC spojovat řádky z několika tabulek. Použití klíčového slova CLISCHEMA také vede k menšímu soupeření při použití tabulek katalogu.
Cílový logický uzel serveru databázových oblastí DB2 Extended Enterprise Edition, s nímž chcete navázat spojení. Toto klíčové slovo (nebo nastavení atributu) potlačuje hodnotu proměnné prostředí DB2NODE. Hodnotu lze nastavit na:
Není-li obsah proměnné určen, pak bude jako cílový logický uzel použit uzel, jemuž je na daném počítači přiřazen logický port 0.
Tato volba vám umožňuje určit předvolený typ spojení.
Toto klíčové slovo definuje cestu používanou při vyhodnocování odkazů na funkce a typy dat v dynamických příkazech SQL. Obsahuje seznam jednoho nebo několika jmen schémat uzavřených do uvozovek a oddělených čárkami.
Předvolená hodnota je "SYSIBM","SYSFUN",X, kde X je hodnota speciálního registru USER uzavřená do uvozovek. Schéma SYSIBM není nutno specifikovat. Pokud není obsaženo v cestě pro funkce, systém s ním automaticky pracuje stejně, jako by bylo uvedeno na prvním místě v seznamu schémat.
Toto klíčové slovo se používá jako součást procesu vyhodnocování nekvalifikovaných odkazů na funkce, které mohou být definovány v jiném pojmenovaném schématu, než je aktuální uživatelské schéma. Pořadí vyhodnocování jmen funkcí je dáno pořadím jmen schémat. Bližší informace o vyhodnocování funkcí viz příručka SQL Reference.
Tato volba způsobí použití příkazu "SET CURRENT PACKAGESET schéma" po každém připojení k databázi. Ve výchozím stavu není tato klauzule používána.
Uvedená klauzule slouží k nastavení jména schématu (identifikátoru kolekce), které bude použito pro výběr této sady při použití v následujících příkazech SQL.
Aplikace CLI/ODBC používají dynamické příkazy SQL. Pomocí této volby můžete ovlivňovat oprávnění používaná při spouštění těchto příkazů:
Příkazy SQL spouštěné z aplikací CLI/ODBC budou nyní pracovat pod zadaným schématem a s oprávněními definovanými v tomto schématu.
Bližší informace o příkazu SET CURRENT PACKAGESET viz příručka SQL Reference.
Informace o souhrnných tabulkách a o příkazu SET CURRENT REFRESH AGE najdete v příručce SQL Reference.
Toto klíčové slovo může být nastaveno na jednu z následujících hodnot:
Při úspěšném navázání spojení je v případě nastavení této volby odeslán systému řízení báze dat příkaz SET CURRENT SCHEMA. Tato funkce umožňuje koncovému uživateli nebo aplikaci pojmenovávat objekty SQL bez nutnosti kvalifikovat je jménem schématu.
Bližší informace o příkazu SET CURRENT SCHEMA viz příručka SQL Reference.
Je-li tato volba nastavena, dojde po úspěšném připojení k odeslání příkazu SET CURRENT SQLID systému správy databází. To umožní koncovému uživateli a aplikaci pojmenovat objekty SQL bez nutnosti kvalifikovat je pomocí jmen schémat.
Tato volba určuje účinek dokončení transakce na otevřené kurzory.
Poznámka: | Při odvolání transakce jsou kurzory vždy zrušeny. |
Tato volba ovlivňuje hodnoty, které vrací funkce SQLGetInfo() volaná s příkazy SQL_CURSOR_COMMIT_BEHAVIOR a SQL_CURSOR_ROLLBACK_BEHAVIOR. Při připojování k databázím DB2 for VSE & VM, které nepodporují držení kurzoru, je hodnota CURSORHOLD ignorována.
Tuto volbu můžete použít pro zvýšení výkonu systému. Držení kurzoru můžete vypnout, pokud:
Systém správy databází bude pracovat efektivněji, neboť po skončení každé transakce budou uvolněny všechny systémové prostředky.
Používáte-li souborové DSN, je třeba pomocí této volby určit databázi na serveru, ke které se připojujete. Tato hodnota nemá nic společného s aliasem databáze určeným na klientu a musí specifikovat vlastní jméno databáze na serveru.
Tato volba se uplatňuje pouze v případě, že volba PROTOCOL je nastavena na hodnotu TCPIP.
Tato volba indikuje ovladači DB2 CLI, která verze brány DB2 Connect nebo DB2 DDCS je používána. Ovladač CLI pak tyto informace může použít pro maximalizaci své interakce se zdrojem dat (například podporou uložených procedur, které vracejí více výsledných sad).
5 = Indikuje použití brány DB2 Connect verze 5 (předvolba).
2 = Indikuje použití brány DB2 DDCS verze 2.
Tato volba se vztahuje pouze na servery DB2, verze 5.2 nebo novější. Je-li zadána libovolná hodnota různá od 0 (předvolba), odešle rozhraní DB2 CLI po úspěšném připojení následující příkaz SQL:
SET CURRENT DEGREE hodnota
Tímto příkazem je určen stupeň paralelního zpracování příkazů SQL. Správce databází určí stupeň paralelního zpracování, jestliže zadáte hodnotu ANY.
Bližší informace viz popis příkazu SET CURRENT DEGREE v příručce SQL Reference.
Tato volba určuje, zda má rozhraní DB2 CLI zobrazovat po ukončení přípravy dotazu SQL dialogové okno s odhady, které vrací optimalizátor DB2.
V tomto okně se zobrazí odhady optimalizátoru a tlačítka, která umožňují uživateli pokračovat v dalším provádění daného dotazu nebo jej předčasně ukončit.
Doporučená hodnota pro klíčové slovo DB2ESTIMATE je 60000.
Tato volba je relevantní pouze pro databáze DB2 verze 2 nebo novější. Okno s odhady se objeví pouze tehdy, používá-li aplikace grafické rozhraní.
Při použití této volby je volba DB2 CLI/ODBC DEFERREDPREPARE považována za vypnutou.
Toto klíčové slovo určuje, zda má server generovat přehled Explain nebo informační tabulky Explain.
Funkce pro generování přehledu Explain a informačních tabulek Explain budou vypnuty odesláním příkazů 'SET CURRENT EXPLAIN SNAPSHOT=NO' a 'SET CURRENT EXPLAIN MODE=NO'.
Funkce pro generování přehledu Explain bude zapnuta odesláním příkazu 'SET CURRENT EXPLAIN SNAPSHOT=YES', funkce pro generování informačních tabulek Explain bude vypnuta odesláním příkazu 'SET CURRENT EXPLAIN MODE=NO'.
Funkce pro generování informačních tabulek Explain bude zapnuta odesláním příkazu 'SET CURRENT EXPLAIN MODE=YES', funkce pro generování přehledu Explain bude vypnuta odesláním příkazu 'SET CURRENT EXPLAIN SNAPSHOT=NO'.
Funkce pro generování přehledu Explain a informačních tabulek Explain budou zapnuty odesláním příkazů 'SET CURRENT EXPLAIN SNAPSHOT=YES' a 'SET CURRENT EXPLAIN MODE=YES'.
Informace Explain budou vkládány do tabulek Explain; tyto tabulky musí být vytvořeny před zahájením generování informací Explain. Bližší informace o těchto tabulkách viz příručka SQL Reference
Aktuální autorizační identifikace musí umožňovat operaci INSERT pro tabulky Explain.
Volba 1 je platná pouze pro připojení k databázovým serverům DB2 Common Server verze 2.1.0 nebo novějším; volby 2 a 3 jsou platné pouze pro připojení k databázovým serverům DB2 Common Server verze 2.1.1 nebo novějším.
Je-li tato volba nastavena, odešle rozhraní DB2 CLI po úspěšném připojení následující příkaz SQL:
SET CURRENT QUERY OPTIMIZATION kladné číslo
Zadané číslo určuje úroveň optimalizace dotazu použitou optimalizátorem při zpracování dotazů SQL. Přípustné úrovně optimalizace obsahuje příručka SQL Reference.
Toto klíčové slovo umožňuje použití jmen zdrojů dat delších než 8 jednobajtových znaků. Jméno zdroje dat (DSN) je jméno uzavřené do hranatých závorek, které popisuje záhlaví sekce v souboru db2cli.ini (na platformách, kde je tento soubor uložen ve formátu ASCII). Obvykle se jako záhlaví sekce používá alias databáze, jehož maximální přípustná délka je 78 bajtů. Uživatel, který si přeje pracovat se zdrojem dat pod delším jménem, které lépe popisuje obsah tohoto zdroje, může do záhlaví sekce umístit delší jméno a nastavit hodnotu tohoto klíčového slova na alias databáze použité v příkazu CATALOG. Následuje příklad:
; Dlouhé jméno je mapováno na alias databáze složené z osmi jednobajtových znaků [DlouhéSložitéJméno] DBALIAS=DB2DBT10
Koncový uživatel se nyní může na datový zdroj odkazovat pod jménem [DlouhéSložitéJméno], skutečné alias databáze je však stále DB2DBT10.
V 16bitovém prostředí Windows ODBC musí být dlouhé zástupné jméno (dbname) uvedeno také na následujícím řádku sekce [ODBC DATA SOURCES] v souboru ODBC.INI.
< alias >=IBM DB2 ODBC DRIVER
Tato volba se používá pouze tehdy, požaduje-li aplikace načtení informací ze základního katalogu tabulek při připojení k databázím DB2 for MVS/ESA. Obsahuje-li subsystém DB2 for MVS/ESA velký počet tabulek, může zadání jména databáze zkrátit dobu potřebnou pro zpracování dotazu na tabulkové informace a snížit počet tabulek, které aplikace uvede ve výsledné datové struktuře.
Je-li tato volba nastavena, bude k různým příkazům (například CREATE TABLE) přidáván příkaz IN DATABASE jméno_databáze.
Tato hodnota je mapována na sloupec DBNAME katalogových tabulek databáze DB2 for MVS/ESA. Není-li zadána žádná hodnota nebo jsou-li zadány rovněž pohledy, synonyma, systémové tabulky nebo aliasy klíčovým slovem TABLETYPE, budou omezeny pouze tabulkové informace; klíčové slovo DBNAME tedy neomezí pohledy, aliasy ani synonyma. Pro další snížení počtu tabulek obsažených ve výsledných informacích je možno zkombinovat toto klíčové slovo s klíčovými slovy SCHEMALIST a TABLETYPE.
Použití této volby by mělo být pouze dočasné; namísto ní by měla být použita katalogová tabulka uložených procedur. Bližší informace viz příručka SQL Reference.
Knihovna, na kterou se odkazuje tato volba, bude použita pro všechna volání uložených procedur, která sama výslovně nespecifikují použitou knihovnu. Vzhledem k tomu, že zadáváte cestu na počítači serveru, musíte použít formát platný v operačním systému serveru, nikoli klienta. Bližší informace viz popis příkazu CALL v příručce SQL Reference.
Nacházejí-li se uložené procedury na serveru například v souboru knihovny d:\terry\proclib\comstor, můžete klíčové slovo DEFAULTPROCLIBRARY nastavit na hodnotu d:\terry\proclib\comstor a poté volat uloženou proceduru func bez určení knihovny. Výsledný příkaz SQL bude vypadat takto:
CALL d:\terry\proclib\comstor!func
Odkládá odeslání požadavku PREPARE do okamžiku odeslání odpovídajícího požadavku na provedení. Oba požadavky jsou následně spojeny do jedné příkazové posloupnosti (namísto původních dvou), čímž se snižuje zatížení sítě a zvyšuje se výkon.
Standardní postup byl změněn počínaje databázemi DB2 verze 2. Odložená příprava je nyní předvolena a v případě potřeby je nutné ji explicitně vypnout.
Pokud cílový databázový server DB2 Common Server nebo brána DDCS nepodporuje odloženou přípravu, klient u příslušného připojení automaticky vypne funkci odkládání přípravy.
Poznámka: | Je-li zapnuta odložená příprava, mohou být odhady řádků a nákladů, které za normálních okolností vrací příkaz PREPARE v parametrech SQLERRD(3) a SQLERRD(4) struktury SQLCA, nulové. To by si měli uvědomit zejména uživatelé, kteří se chtějí na základě těchto hodnot rozhodnout, zda budou pokračovat ve zpracování příkazu SQL. |
Tato volba je automaticky vypnuta v případě nastavení volby DB2ESTIMATE na nenulovou hodnotu.
Ovladač CLI/ODBC je schopen podporovat současné použití několika jednotkových procesů.
Tato volba se používá pro zapnutí nebo vypnutí podpory použití více jednotkových procesů.
Při vypnuté podpoře souběžných jednotkových procesů budou na úrovni procesu všechna volání jednotkových procesů řazena sériově. Nastavení použijte pro aplikace, které používají více jednotkových procesů, ale vyžadují jejich sériové řazení podle standardu DB2 verze 2.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Tato volba určuje, zda má být dočasný kurzor automaticky uzavřen serverem bez žádosti klienta v okamžiku, kdy je klientu odeslán poslední záznam.
V tomto případě nemusí ovladač CLI/ODBC odesílat požadavek na uzavření kurzoru vzhledem k tomu, že kurzor již byl uzavřen.
Zapnutí této volby zrychlí práci aplikací, které pracují s velkým množstvím malých výsledných sad.
Funkce EARLYCLOSE není použita v těchto případech:
Poznámka: | Ačkoli je hodnotu této volby možno nastavit v libovolném okamžiku, platí vždy hodnota aktuální v okamžiku provedení příkazu (tedy při otevření kurzoru). |
Tato volba může snížit množství návratových informací v okamžiku, kdy aplikace žádá seznam oprávnění pro tabulky v databázi nebo sloupce v tabulce. Zadaný seznam autorizačních identifikací je použit jako filtr; v návratovém seznamu se objeví pouze tabulky nebo sloupce, ke kterým byla těmto uživatelům přidělena oprávnění.
Této volbě přiřaďte seznam jednoho nebo několika autorizačních identifikací, kterým byla přidělena oprávnění, uzavřete je do apostrofů a oddělte čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
GRANTEELIST=" 'USER1', 'USER2', 'USER8' "
Žádá-li aplikace seznam oprávnění pro určitou tabulku, budou vráceny pouze sloupce, k nimž bylo přiděleno oprávnění uživatelům USER1, USER2 nebo USER8.
Tato volba může snížit množství návratových informací v okamžiku, kdy aplikace žádá seznam oprávnění pro tabulky v databázi nebo sloupce v tabulce. Zadaný seznam autorizačních identifikací je použit jako filtr; v návratovém seznamu se objeví pouze tabulky nebo sloupce, ke kterým byla těmito uživateli přidělena oprávnění.
Této volbě přiřaďte seznam jedné nebo několika autorizačních identifikací, kterými byla přidělena oprávnění, uzavřete je do apostrofů a oddělte čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
GRANTORLIST=" 'USER1', 'USER2', 'USER8' "
Žádá-li aplikace seznam oprávnění pro určitou tabulku, budou vráceny pouze sloupce, k nimž přidělil oprávnění uživatel USER1, USER2 nebo USER8.
Tato volba určuje, jakým způsobem aplikace vrací dva související údaje:
Typ GRAPHIC není standardně považován za podporovaný, neboť mnohé aplikace tento typ dat nerozpoznávají a nemohou zajistit jeho správné zpracování.
Tuto volbu spolu s volbou SERVICENAME použijte k zadání povinných atributů připojení TCP/IP z klienta na server DB2. Tyto dvě volby se uplatňují pouze v případě, že volba PROTOCOL je nastavena na hodnotu TCPIP.
Zadejte buď jméno hostitele, nebo IP adresu systému serveru.
V některých případech není aplikace schopna správně zpracovat varovná hlášení. Tato volba se používá tehdy, nemají-li být varování generovaná správcem databází předávána aplikaci.
Ačkoli je tuto volbu možno použít samostatně, je vhodné kombinovat ji s konfiguračním klíčovým slovem WARNINGLIST.
V určitých výjimečných případech může aplikace některá varování nesprávně zpracovávat, ale nechce ignorovat všechna varování. Pomocí tohoto klíčového slova lze určit, která varování nemají být aplikaci předávána. V případě, že mají být ignorována všechna varování správce databází, mělo by být použito klíčové slovo IGNOREWARNINGS.
Je-li některý stav SQL obsažen jak v seznamu IGNOREWARNLIST, tak v seznamu WARNINGLIST, bude v konečném důsledku ignorován.
Všechny stavy SQL musejí být zapsány velkými písmeny, ohraničeny apostrofy a odděleny čárkami. Celý řetězec musí být uzavřen do uvozovek. Například:
IGNOREWARNLIST="'01000', '01004','01504'"
0 = Spojení nejsou ukládána do vyrovnávací paměti (předvolba).
Nastavení této volby na hodnotu větší než nula může urychlit práci aplikací, které se opakovaně připojují k téže databázi a opět se od ní odpojují s použitím stejných informací o spojení.
Namísto uzavření spojení při každém odpojení a opakovaného připojování ponechá ovladač spojení otevřené a informace o něm uloží do vyrovnávací paměti. Objeví-li se nový požadavek na připojení ke stejné databázi, bude použito existující spojení. Tímto způsobem lze ušetřit čas, systémové prostředky a přenosovou kapacitu sítě potřebné pro uzavření prvního spojení a následné nové připojení.
Hodnota přiřazená této volbě udává počet databázových spojení, která mají být ukládána do vyrovnávací paměti. Ačkoli je maximální přípustná hodnota omezena pouze systémovými prostředky, u běžných aplikací, které jsou schopny této techniky využít, postačí nastavení hodnoty 1 až 2.
Standardně je k tomuto účelu rezervována paměť potřebná k uchování pěti manipulátorů pro příkazy. Po uzavření manipulátoru pro příkaz není paměť použitá pro daný manipulátor dealokována; namísto toho je použita při alokaci dalšího manipulátoru pro příkaz.
Hodnota přiřazená této volbě udává počet manipulátorů pro příkazy, které mají být ukládány do vyrovnávací paměti. Nastavením hodnoty nižší než 5 lze snížit velikost vyrovnávací paměti příkazů. Nastavením hodnoty vyšší než 5 je možno zvýšit výkon aplikací, které opakovaně otevírají a zavírají velké sady příkazů.
Maximální přípustný počet manipulátorů pro příkazy ukládaných do vyrovnávací paměti je omezen systémovými prostředky.
Toto nastavení potlačí hodnotu 2 gigabajty (1GB pro typ DBCLOB), kterou vrací funkce SQLGetTypeInfo() pro sloupec COLUMN_SIZE u datových typů SQL_CLOB, SQL_BLOB a SQL_DBCLOB. Následující příkazy CREATE TABLE obsahující sloupce LOB použijí nastavenou hodnotu namísto standardní.
Tato volba sděluje rozhraní DB2 CLI, jaké typy dat očekává aplikace při
práci s databázemi obsahujícími sloupce LOB.
Typ databázových dat | Large Object (0 - předvolba) | Data typu Long (1) |
---|---|---|
CLOB | SQL_CLOB | SQL_LONGVARCHAR |
BLOB | SQL_BLOB | SQL_LONGVARBINARY |
DBCLOB | SQL_DBCLOB | SQL_LONGVARGRAPHIC |
Tato volba je určena pro práci s aplikacemi ODBC, které nedokáží zajistit správné zpracování datového typu LOB.
Použitím této volby DB2 CLI/ODBC v kombinaci s volbou LOBMAXCOLUMNSIZE je možno snížit standardně deklarovanou velikost dat těchto typů.
Tato volba se používá k určení maximálního povoleného počtu spojení na jednu aplikaci CLI/ODBC. Jejím prostřednictvím může například správce sítě podle potřeby omezit počet spojení, která je možno otevřít z jedné aplikace. Nulová hodnota reprezentuje neomezený počet, tj. aplikace smí otevřít tolik spojení, na kolik jí vystačí systémové prostředky.
Na platformách OS/2 a WIN32 (Windows NT a Windows 95) využívajících protokol NetBIOS odpovídá tato hodnota počtu spojení (relací systému NetBIOS), která budou jednou aplikací současně ustavena. Přípustný rozsah hodnot pro protokol NetBIOS v systému OS/2 je od 1 do 254. Při zadání hodnoty 0 (předvolba) bude aplikaci přiděleno 5 vyhrazených spojení. Vyhrazené relace protokolu NetBIOS nemohou být použity jinými aplikacemi. Počet spojení určený tímto parametrem bude platný pro libovolný adaptér použitý protokolem NetBIOS pro připojení ke vzdálenému serveru (číslo adaptéru je uvedeno v adresáři uzlů pro uzel NetBIOS).
Nastavuje režim CONNECT na hodnotu SHARE nebo EXCLUSIVE. Pokusí-li se aplikace změnit režim v době existence spojení, je zadaná hodnota ignorována. Předvolená hodnota je SHARE.
Poznámka: | U spojení typu DRDA není povoleno použití hodnoty EXCLUSIVE. Bližší informace o příkazu CONNECT viz příručka SQL Reference. |
Tato volba se používá k zadání způsobu mapování požadavků SQLConnect() na fyzická databázová spojení.
Je-li klíčové slovo MULTICONNECT nastaveno na hodnotu 0, musí být pomocí klíčového slova DISABLEMULTITHREAD znemožněno použití více jednotlivých procesů.
Poznámka: | Je-li volba MULTICONNECT vypnuta, všechny příkazy budou prováděny nad stejným spojením a tedy v rámci stejné transakce. Při odvolání transakce budou tedy odvolány VŠECHNY příkazy na všech logických spojeních. Před vypnutím volby MULTICONNECT se ujistěte, že je aplikace navržena pro práci v tomto režimu; v opačném případě může aplikace pracovat chybně. |
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Tato volba připojí ke každému příkazu Select klauzuli "OPTIMIZE FOR n ROWS", kde n je celé číslo větší než 0. Při nastavení nulové hodnoty 0 (předvolba) nebude tato klauzule připojována.
Bližší informace o účincích klauzule OPTIMIZE FOR n ROWS viz příručka Administration Guide.
Je-li funkce OPTIMIZESQLCOLUMNS zapnuta (hodnota je 1), budou všechna volání SQLColumns() optimalizována, pokud je zadáno konkrétní (neurčené maskou) jméno schématu, konkrétní jméno tabulky a jméno sloupce je % (všechny sloupce). Ovladač DB2 CLI/ODBC bude toto volání optimalizovat tak, že nebudou prohledávány systémové tabulky. Je-li volání optimalizováno, není vrácena informace COLUMN_DEF (obsahuje předvolené řetězce pro sloupce). Je-li spojení navázáno s databází spuštěné na systému AS/400, informace vrácené voláním SQLColumns() jsou nesprávné pro sloupce, jejichž datový typ je NUMERIC. Nepotřebuje-li aplikace tyto informace, může zapnout optimalizaci, čímž zvýší výkonnost systému.
Potřebuje-li aplikace informace COLUMN_DEF, klíčové slovo OPTIMIZESQLCOLUMNS by mělo mít hodnotu 0. Toto nastavení je předvolené.
Toto klíčové slovo určuje opravný modul známých problémů s aplikacemi ODBC. Zadaná hodnota může specifikovat žádný, jeden nebo několik opravných modulů. Hodnoty oprav zde určené jsou používány ve spojení s libovolnými hodnotami PATCH2, které mohou být také nastaveny.
S použitím konfiguračního zápisníku DB2 CLI/ODBC můžete zvolit, které opravné moduly chcete používat. Nastavujete-li hodnoty přímo v souboru db2cli.ini a chcete používat několik opravných modulů současně, sečtěte všechny příslušné hodnoty a součet uveďte v klíčovém slově. Chcete-li například používat opravné moduly 1, 4 a 8, uveďte v souboru db2cli.ini řádek PATCH1=13.
Konfigurační zápisník DB2 CLI/ODBC používá seznam hodnot. Informace o aktualizaci tohoto seznamu hodnot zobrazíte výběrem složky Servis ve složce DB2. Stejné informace jsou zobrazeny rovněž v souboru README (neexistují-li pro danou platformu žádné aktuální opravné moduly, soubor README nebude obsahovat příslušnou sekci).
Toto klíčové slovo určuje opravný modul známých problémů s aplikacemi CLI/ODBC. Zadaná hodnota může specifikovat žádný, jeden nebo několik opravných modulů. Hodnoty oprav zde určené jsou používány ve spojení s libovolnými hodnotami PATCH1, které mohou být také nastaveny.
Když určujete více oprav, oddělujte zadávané hodnoty v řetězci čárkami (na rozdíl od volby PATCH1, kde se hodnoty sčítají a používá se jejich součet).
Chcete-li nastavit klíčové slovo PATCH2 na hodnoty 3, 4 a 8, zadejte:
PATCH2="3, 4, 8"
Hodnoty pro klíčové slovo PATCH2 jsou obsaženy v souboru README (neexistují-li pro danou platformu žádné aktuální opravné moduly, soubor README nebude obsahovat příslušnou sekci).
Tato volba zobrazí okno se zprávou vždy, když rozhraní DB2 CLI ohlásí chybu, kterou lze dále zpracovat pomocí funkcí SQLGetDiagRec() nebo SQLError(). Její použití je výhodné zejména při ladění aplikací, které nezobrazují zprávy pro uživatele.
Protokol TCP/IP je jediným protokolem, který je podporován souborovým DSN. Nastavte volbu na hodnotu TCPIP (bez lomítka).
Je-li nastavena tato volba, musí být také nastaveny následující volby:
Tato hodnota hesla je použita v případě, že aplikace v okamžiku připojení neuvede žádné heslo.
Ukládá se jako prostý text a není tedy nijak zabezpečeno.
Aplikace mohou nastavit atribut příkazu SQL_ATTR_QUERY_TIMEOUT pomocí funkce SQLSetStmtAttr(). Hodnot představuje dobu v sekundách, po kterou se čeká na provedení příkazu SQL, než se vrátí řízení aplikaci.
Konfigurační klíčové slovo QUERYTIMEOUTINTERVAL určuje, jak dlouho ovladač CLI čeká mezi kontrolami, zda je dotaz dokončen.
Uvažujme situaci, kdy parametr SQL_ATTR_QUERY_TIMEOUT je nastaven například na hodnotu 25 sekund (časový limit 25 sekund) a parametr QUERYTIMEOUTINTERVAL na hodnotu 10 sekund (kontrola dotazu každých 10 sekund). V takovém případě nedojde k vypršení časového limitu pro dotaz dříve než za 30 sekund (tj. první kontrola po uplynutí 25 sekundového limitu).
V některých případech může být parametr SQL_ATTR_QUERY_TIMEOUT nastaven na velmi nízkou hodnotu, ale dotaz by neměl být přerušen z důvodu překročení časového limitu. Pokud aplikaci nelze upravit (např. u aplikací ODBC od jiných dodavatelů), může být parametr QUERYTIMEOUTINTERVAL nastaven na hodnotu 0, a ovladač CLI pak bude ignorovat nastavení SQL_ATTR_QUERY_TIMEOUT.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Volba SCHEMALIST se používá pro zadání předvolby, která zvyšuje výkon systému omezením aplikací vytvářejících seznamy všech tabulek v databázovém systému DBMS.
Obsahuje-li databáze velké množství definovaných tabulek, je možné zadáním seznamu schémat zkrátit čas potřebný pro zpracování dotazu na tabulkové informace a snížit tak počet tabulek, které se objeví ve výsledném seznamu. V názvech schémat se rozlišují velká a malá písmena, dále tyto názvy musí být uzavřeny do apostrofů a odděleny čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
SCHEMALIST="'USER1','USER2','USER3'"
U databází DB2 for MVS/ESA je v tomto seznamu možné uvést rovněž hodnotu CURRENT SQLID; tato hodnota se však neuzavírá do apostrofů. Příklad:
SCHEMALIST="'USER1',CURRENT SQLID,'USER3'"
Maximální přípustná délka řetězce je 256 znaků.
Pro další snížení počtu tabulek obsažených ve výsledných informacích je možno zkombinovat tuto volbu s volbami DBNAME a TABLETYPE.
Tuto volbu spolu s volbou HOSTNAME použijte k zadání povinných atributů připojení TCP/IP z klienta na server DB2. Tyto dvě volby se uplatňují pouze v případě, že volba PROTOCOL je nastavena na hodnotu TCPIP.
Zadejte buď jméno služby, nebo číslo portu systému serveru.
Tato volba se používá v kombinaci s volbou POPUPMESSAGE. Zabraňuje rozhraní DB2 CLI zobrazovat chybové zprávy odpovídající definovaným stavům.
Jednotlivé stavy musí být uvedeny velkými písmeny, uzavřeny do apostrofů a odděleny čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
SQLSTATEFILTER=" 'HY1090', '01504', '01508' "
Toto klíčové slovo se používá k určení jména souboru záznamu a případně adresáře, ve kterém je soubor uložen.
Další informace o spouštění aplikací CLI/ODBC jako statických příkazů SQL najdete v popisu klíčového slova STATICMODE.
Toto klíčové slovo se používá k určení jména souboru žurnálu statického profilování a případně adresáře, ve kterém je soubor uložen.
Další informace o spouštění aplikací CLI/ODBC jako statických příkazů SQL najdete v popisu klíčového slova STATICMODE.
Tato volba umožňuje nastavit, jak budou zpracovávány příkazy SQL zadávané aplikací CLI/ODBC pro toto DSN:
Další informace o spouštění aplikací CLI/ODBC jako statických příkazů SQL najdete v příručce Poznámky k verzi a CLI Guide and Reference. Doplňující informace lze také získat ze sítě Internet na adrese http://www.ibm.com/software/data/db2/udb/staticcli.
Toto klíčové slovo slouží k určení jména balíku, který se použije v případě, že aplikace je spuštěna v režimu shody. Nejdříve musíte použít režim záznamu k vytvoření souboru záznamu.
Použije se pouze prvních 7 znaků uvedeného jména balíku. Dále je přidána jednobajtová přípona určující úroveň oddělení:
Další informace o spouštění aplikací CLI/ODBC jako statických příkazů SQL najdete v popisu klíčového slova STATICMODE.
Pomocí této volby můžete určit, jakým způsobem má být koordinováno potvrzování a odvolávání transakcí u vícenásobných databázových spojení (DUOW). Její použití je relevantní pouze tehdy, je-li předvolený typ spojení nastaven na koordinovaná spojení (CONNECTTYPE = 2).
Potvrzení není prováděno ve dvou fázích s využitím správce transakcí; namísto toho jsou operace provedené v jednotlivých databázích vícenásobné transakce potvrzovány v jedné fázi.
U databází, které tento postup podporují, je potvrzování prováděno ve dvou fázích, k jejichž koordinaci je třeba využít správce transakcí.
Tato volba udává náhradní schéma, které má být prohledáváno při načítání informací systémového katalogu katalogovými funkcemi rozhraní DB2 CLI a ODBC namísto schémat SYSIBM (případně SYSTEM, QSYS2).
Pomocí náhradního schématu může správce systému definovat sadu pohledů,
které se skládají z podmnožiny řádků kterékoli z následujících tabulek
systémového katalogu:
DB2 Universal Database | DB2 for MVS/ESA | DB2 for VSE & VM | OS/400 | DB2 Universal Database for AS/400 |
---|---|---|---|---|
SYSTABLES | SYSTABLES | SYSCATALOG | SYSTABLES | SYSTABLES |
SYSCOLUMNS | SYSCOLUMNS | SYSCOLUMNS | SYSCOLUMNS | SYSCOLUMNS |
SYSINDEXES | SYSINDEXES | SYSINDEXES | SYSINDEXES | SYSINDEXES |
SYSTABAUTH | SYSTABAUTH | SYSTABAUTH |
| SYSCST |
SYSRELS | SYSRELS | SYSKEYCOLS |
| SYSKEYCST |
SYSDATATYPES | SYSSYNONYMS | SYSSYNONYMS |
| SYSCSTCOL |
SYSPROCEDURES | SYSKEYS | SYSKEYS |
| SYSKEYS |
SYSPROCPARMS | SYSCOLAUTH | SYSCOLAUTH |
| SYSREFCST |
| SYSFOREIGNKEYS |
|
|
|
| SYSPROCEDURES 1 |
|
|
|
| SYSDATABASE |
|
|
|
Je-li například sada pohledů pro tabulky systémového katalogu určena schématem ACME, je pohled pro SYSIBM.SYSTABLES dán pohledem ACME.SYSTABLES a schéma SYSSCHEMA je třeba nastavit na ACME.
Definování a použití omezeného počtu pohledů pro tabulky systémového katalogu snižuje počet tabulek vypisovaných aplikací, čímž se zároveň zkracuje doba potřebná pro zpracování dotazů na tabulkové informace.
Není-li zadána žádná hodnota, použijí se předvolby:
Pro další snížení počtu tabulek obsažených ve výsledných informacích je možno zkombinovat toto klíčové slovo s klíčovými slovy SCHEMALIST a TABLETYPE (a dále DBNAME u serverů DB2 for MVS/ESA).
Obsahuje-li databáze velké množství definovaných tabulek, je možné zadáním řetězce určujícího typ tabulek zkrátit čas potřebný pro zpracování dotazu na tabulkové informace a snížit tak počet tabulek, které se objeví ve výsledném seznamu.
Je možno zadat libovolný počet hodnot. Jednotlivé typy musí být uvedeny velkými písmeny, uzavřeny do apostrofů a odděleny čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
TABLETYPE="'TABLE','VIEW'"
Pro další snížení počtu tabulek obsahujících výsledné informace je možno zkombinovat tuto volbu s volbami DBNAME a SCHEMALIST.
Volba TABLETYPE se používá jako předvolba pro funkce rozhraní DB2 CLI, které vracejí seznamy tabulek, pohledů, zástupných jmen a synonym obsažených v databázi. Neuvede-li aplikace při volání funkce typ tabulky a není-li použito toto klíčové slovo, vrací se všechny informace bez ohledu na to, v kterém typu tabulky jsou obsaženy. Pokud aplikace při volání funkce uvede typ tabulky, potlačí tento parametr předvolbu definovanou klíčovým slovem.
Obsahuje-li volba TABLETYPE jinou hodnotu než TABLE, nelze pro omezení informací z dané konkrétní databáze DB2 for MVS/ESA použít klíčové slovo DBNAME.
Při práci s velkými objekty (objekty typu CLOB, BLOB atd.) je na počítači klienta často vytvářen dočasný soubor, do kterého se ukládají pracovní informace. Pomocí této volby můžete zadat adresář, do kterého se budou dočasné soubory ukládat. Nezadáte-li žádnou hodnotu, bude použit systémový adresář dočasných souborů.
Klíčové slovo je v souboru db2cli.ini umístěno v sekci voleb pro zdroj dat a používá následující syntaxi:
Je-li v okamžiku přístupu k rozsáhlému objektu zadaná cesta neplatná nebo nelze-li v uvedeném adresáři vytvořit dočasné soubory, bude vrácen stav SQLSTATE=HY507.
Je-li tato volba zapnuta (hodnota 1), budou trasovací záznamy rozhraní CLI/ODBC ukládány do souboru určeného konfiguračním parametrem TRACEFILENAME nebo do souborů v adresáři určeném konfiguračním parametrem TRACEPATHNAME.
Chcete-li například ukládat každou trasovací položku do trasovacího souboru rozhraní CLI/ODBC bezprostředně po jejím vytvoření, zadejte tyto parametry:
[COMMON] TRACE=1 TRACEFILENAME=E:\TRACES\CLI\MONDAY.CLI TRACEFLUSH=1
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Je-li funkce TRACECOMM zapnuta (hodnota je 1), budou do trasovacího souboru zahrnuty informace o každém síťovém požadavku.
Tuto volbu lze použít pouze tehdy, je-li zapnuta volba TRACE. Příklady viz volba TRACE.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Pokud zadaný soubor neexistuje, bude vytvořen; v opačném případě budou nové trasovací informace připojovány na konec souboru.
Je-li zadané jméno souboru neplatné, nelze-li soubor vytvořit nebo nelze-li do něj zapisovat, nebude trasování aktivováno a systém vrátí chybové hlášení.
Tuto volbu lze použít pouze tehdy, je-li zapnuta volba TRACE. Nastavíte-li tuto volbu v pomocném konfiguračním programu CLI/ODBC, bude volba TRACE zapnuta automaticky.
Příklady použití různých parametrů trasování viz volba TRACE. Nastavíte-li tuto volbu, bude ignorována volba TRACEPATHNAME.
Trasovací funkce rozhraní DB2 CLI by měly být použity pouze pro účely trasování. Zpomalují práci ovladače CLI/ODBC a uložené trasovací informace mohou po určité době zabírat příliš mnoho prostoru na disku.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Po zapnutí této volby (TRACEFLUSH = 1) dojde k zápisu na disk vždy po vytvoření nové trasovací položky. Dojde tak ke zpomalení trasovacího procesu, je však zajištěn zápis každé položky na disk ještě před přechodem aplikace k následujícímu příkazu.
Tuto volbu lze použít pouze tehdy, je-li zapnuta volba TRACE. Příklady viz volba TRACE.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Pro každý proces nebo jednotkový proces používající stejnou sdílenou knihovnu nebo knihovnu DLL bude v zadaném adresáři vytvořen oddělený trasovací soubor rozhraní DB2 DB2 CLI/ODBC.
Je-li zadaný adresář neplatný nebo nelze-li do něj zapisovat, nebude trasování aktivováno a systém vrátí chybové hlášení.
Tuto volbu lze použít pouze tehdy, je-li zapnuta volba TRACE. Nastavíte-li tuto volbu v pomocném konfiguračním programu CLI/ODBC, bude volba TRACE zapnuta automaticky.
Příklady použití různých parametrů trasování viz volba TRACE. Při použití volby TRACEFILENAME bude tato volba DB2 CLI/ODBC ignorována.
Trasovací funkce rozhraní DB2 CLI by měly být použity pouze pro účely trasování. Zpomalují práci ovladače CLI/ODBC a uložené trasovací informace mohou po určité době zabírat příliš mnoho prostoru na disku.
(Tato volba se nachází v sekci Common inicializačního souboru a vztahuje se tedy na všechna spojení s databázemi DB2.)
Nastavuje jednu z následujících úrovní oddělení:
V závorkách jsou uvedeny termíny používané podle standardu IBM pro ekvivalentní úrovně oddělení SQL92. Uvědomte si, že úroveň No Commit není úroveň oddělení SQL92 a je podporována pouze u databází DB2 Universal Database for AS/400. Bližší informace o úrovních oddělení viz příručka SQL Reference.
Toto klíčové slovo je použitelné pouze v případě, že je nastavena předvolená úroveň oddělení. V případě, že aplikace úroveň oddělení výslovně nastavila, toto klíčové slovo nebude bráno v úvahu.
Uvedené jméno uživatele je použito v případě, že aplikace v okamžiku připojení neuvede žádné jméno uživatele.
Tato volba vám umožňuje určit, zda má být znak podtržení ("_") používán jako zástupný znak (odpovídající libovolnému znaku nebo žádnému znaku), nebo zda má představovat sám sebe. Tato volba ovlivňuje pouze volání katalogových funkcí, které přijímají generické vyhledávací řetězce.
Znak podtržení zastupuje libovolný nebo žádný znak. Jsou-li například dvě tabulky definovány takto:
CREATE TABLE "OWNER"."KEY_WORDS" (COL1 INT) CREATE TABLE "OWNER"."KEYWORDS" (COL1 INT)
vrátí volání katalogové funkce SQLTables() s argumentem "KEY_WORDS" obě uvedené položky.
Znak podtržení je interpretován jako podtržení. Jsou-li definovány stejné tabulky jako ve výše uvedeném příkladu, vrátí volání funkce SQLTables() s parametrem "KEY_WORDS" pouze položku "KEY_WORDS".
Nastavením tohoto klíčového slova na hodnotu 0 můžete zvýšit výkon systému v těch případech, kdy jména objektů (vlastníků, tabulek nebo sloupců) v databázi obsahují znaky podtržení.
Poznámka: | Toto klíčové slovo ovlivňuje pouze servery DB2 Common Server verze starší než 2.1. V dalších verzích těchto serverů a u všech ostatních serverů DB2 lze použít klauzuli ESCAPE predikátu LIKE. Bližší informace o klauzuli ESCAPE viz příručka SQL Reference. |
Kterékoli ze stavových hlášení SQLSTATE používaných jako chybové zprávy je možno zpracovávat jako varování. Jednotlivé stavy musí být uvedeny velkými písmeny, uzavřeny do apostrofů a odděleny čárkami. Celý řetězec musí být uzavřen do uvozovek. Příklad:
WARNINGLIST=" '01S02', 'HY090' "
Tuto volbu je možno použít v kombinaci s konfiguračním klíčovým slovem IGNOREWARNINGS. Nastavíte-li rovněž volbu IGNOREWARNINGS, nebudou chybové zprávy považované za varování vůbec zobrazeny.