Името на DB2 CLI функцията (API), която е генерирала грешката, се добавя към съобщението за грешка, получавано с използването на SQLGetDiagRec() или SQLError(). Името на функцията е затворено в кръгли скоби { }.
Например,
[IBM][CLI Driver]" CLIxxxx: < text > SQLSTATE=XXXXX {SQLGetData}"
Тази ключова дума се използва само за дебъгване.
Тази опция ви позволява да разрешавате или забранявате възможността за асинхронно изпълнение на заявки. Това влияе само върху приложения, които са написани така, че да се възползват от тази възможност. Забранете я само ако вашето приложение не функционира нормално, когато тя е разрешена. Тя се намира в раздела за източника на данни на файла db2cli.ini.
Забележка: | CLI/ODBC драйверът ще реагира като в предишните версии на DB2, които не поддържаха асинхронен ODBC. |
Тази опция ви позволява да укажете дали ODBC двоичните типове данни (SQL_BINARY, SQL_VARBINARY, SQL_LONGVARBINARY и SQL_BLOB) се съобщават като двоични типове данни. IBM DBMS поддържат колони с двоични типове данни с дефинирането на CHAR, VARCHAR и LONG VARCHAR колони с атрибута FOR BIT DATA. DB2 Universal Database поддържа и двоични типове данни чрез типа данни BLOB (в този случай той се преобразува в тип данни CLOB).
Потребителите може да използват тази опция, ако използват DB2 Версия 1 приложение, което извлича (LONG) (VAR)CHAR данни в SQL_C_CHAR буфер. В DB2 Версия 1 данните се преместват в SQL_C_CHAR буфера непроменени; от DB2 Версия 2 данните се конвертират в ASCII представянето на всяка шестнадесетична двойка.
Само настройте BITDATA = 0, ако сте сигурни, че всички колони, дефинирани като FOR BIT DATA или BLOB, съдържат само символни данни, и че приложението не може да показва колони с двоични данни.
Ако стойността НЕ е цяло число между 3 и 30, ще се използва подразбиращата се стойност без съобщение за грешка или предупреждение.
Тази ключова дума се използва за увеличаване броя на разделите за SQL оператори в CLI/ODBC приложения. Ако се използва, администраторът трябва явно да свърже необходимите CLI файлове за свързване с опцията за свързване CLIPKG. Освен това файлът db2cli.ini на сървъра (DB2 UDB V6.1 или следваща версия на UNIX или Intel платформи) трябва да се обнови със същата стойност на CLIPKG.
Тази настройка се прилага само за големи пакети (съдържащи 364 раздела). Броят на малките пакети (съдържащи 64 раздела) е 3 и не може да се променя.
Препоръчва се да увеличите броя на разделите само колкото е необходимо, за да се изпълнява приложението ви, тъй като пакетите заемат пространство в базата данни.
DB2 ODBC каталогът е създаден за да подобри производителността на обръщенията към схеми за списъци на таблици в ODBC приложения, които се свързват с хост DBMS през DB2 Connect.
DB2 ODBC каталогът, създаден и обслужван на хост DBMS, съдържа редове, представляващи обекти, дефинирани в реалния DB2 каталог, но тези редове съдържат само колоните, необходими за поддръжка на ODBC операции. Таблиците в DB2 ODBC каталога са предварително свързани и специално индексирани за да се поддържа бърз достъп до каталога за ODBC приложенията.
Системните администратори могат да създават няколко DB2 ODBC каталожни производни таблици, всяка съдържаща само редовете, които са необходими за дадена група потребители. Всеки краен потребител може тогава да избира DB2 ODBC каталожната производна таблица, която желае да използва (чрез настройване на тази ключова дума).
Използването на настройката CLISCHEMA е напълно прозрачно за ODBC приложението; може да използвате тази опция с всяко ODBC приложение.
Тъй като тази ключова дума има подобен на ключовата дума SYSSCHEMA ефект, трябва да бъде използвана CLISCHEMA (където е възможно).
CLISCHEMA подобрява ефективността при достъп до данни: Дефинираните от потребителя таблици, използвани със SYSSCHEMA, бяха огледални образи на DB2 каталожните таблици и ODBC драйверът трябваше да свърже редове от няколко таблици, за да представи информацията, поискана от ODBC потребителя. Използването на CLISCHEMA води и до по-малко опити за повторно заключване на редове на каталожната таблица.
Използвана за задаване на логическия възел приемник на DB2 Extended Enterprise Edition сървър на дял на база данни, към когото искате да се свържете. Тази ключова дума (или настройка на атрибут) заменя стойността на променливата на обкръжението DB2NODE. Може да бъде настроена на:
Ако тази променлива не е зададена, логическият възел приемник по подразбиране е логическия възел, който е дефиниран с порт 0 на машината.
Тази опция ви позволява да укажете типа връзка по подразбиране.
Тази ключова дума дефинира пътеката, използвана за резолиране на референции към функции и типове данни, които се използват в динамични SQL оператори. Тя съдържа списък с едно или повече имена на схеми, където имената на схеми са затворени в двойни кавички и са разделени със запетайки.
Настройката по подразбиране е "SYSIBM","SYSFUN",X , където X е стойността на специалния USER регистър, разделена с двойни кавички. Не е необходимо да се задава схемата SYSIBM. Ако тя не е включена във функционалната пътека, тогава тя безусловно се приема за първата схема.
Тази ключова дума се използва като част от процеса на резолиране на неопределени референции към функции, които може да са дефинирани в име на схема, различно от текущата потребителска схема. Редът на имената на схемите определя реда, в който ще бъдат резолирани имената на функциите. За повече информация относно резолирането на функции, вижте SQL Справочник.
Тази опция ще подава командата "SET CURRENT PACKAGESET схема" след всяко свързване с база данни. По подразбиране тази клауза не се добавя.
Този оператор настройва името на схемата (идентификатора на колекция), което ще бъде използвано за избор на пакета за използване в последователни SQL оператори.
CLI/ODBC приложенията подават динамични SQL оператори. С използването на тази опция може да се управляват привилегиите, използвани за изпълнението на тези оператори:
SQL операторите от CLI/ODBC приложенията сега ще работят под определена схема и ще използват там дефинираните привилегии.
Вижте SQL Справочник за повече информация за командата SET CURRENT PACKAGESET.
За информация за сумарните таблици и оператора SET CURRENT REFRESH AGE вижте SQL Справочника.
Тази ключова дума може да бъде настроена на една от следните стойности:
При успешно свързване, ако тази опция е настроена, към DBMS се изпраща SET CURRENT SCHEMA оператор. Това позволява на крайния потребител или приложение да именуват SQL обекти без да трябва да ги квалифицират по име на схема.
За допълнителна информация за оператора SET CURRENT SCHEMA, вижте SQL Справочник.
При успешно свързване, ако тази опция е настроена, към DBMS се изпраща SET CURRENT SQLID оператор. Това позволява на крайния потребител и приложението да именуват SQL обекти без да трябва да ги квалифицират по име на схема.
Тази опция управлява ефекта на завършването на транзакция върху отворени указатели.
Забележка: | Указателите винаги се унищожават при ролбек на транзакциите. |
Тази опция влияе върху резултата, връщан от SQLGetInfo(), когато е извикана с SQL_CURSOR_COMMIT_BEHAVIOR или SQL_CURSOR_ROLLBACK_BEHAVIOR. Стойността на CURSORHOLD се игнорира, ако връзката е с DB2 за VSE и VM, където указатели със задържане не се поддържат.
Може да използвате тази опция за настройка на производителността. Тя може да бъде настроена на задържане на указателите (0), ако сте сигурни, че вашето приложение:
DBMS ще работи по-ефективно, ако не е нужно да бъдат поддържани ресурси след края на транзакцията.
Когато използвате File DSN, трябва да използвате тази опция, за да посочите базата данни на сървъра, към която да се направи свързване. Тази стойност няма нищо общо с някой псевдоним на база данни, зададен на клиента, тя трябва да се зададе за име на база данни на самия сървър.
Тази опция важи само когато за опцията PROTOCOL е зададено TCPIP.
Тази опция се използва за показване на DB2 CLI драйвера, коя версия на DB2 Connect или DB2 DDCS шлюз се използва. Тогава CLI драйверът може да използва тази информация, за да максимизира взаимодействията си с източника на данни (например поддържане на запомнена процедура, която връща няколко резултатни набора).
5 = Показва, че се използва версия 5 на DB2 Connect шлюз (по подразбиране).
2 = Показва, че се използва версия 2 на DB2 DDCS шлюз.
Тази опция се отнася само за DB2 Версия 5.2 или по-нов сървър. Ако посочената стойност е различна от 0 (стойността по подразбиране), DB2 CLI ще подаде следния SQL оператор след успешно свързване:
SET CURRENT DEGREE стойност
Така се установява степента на паралелизъм за изпълнението на SQL оператори. Мениджърът на базата данни сам ще определи степента на паралелизъм, ако използвате ANY.
За повече информация вижте оператора SET CURRENT DEGREE в SQL Справочник.
Тази опция определя дали DB2 CLI ще покаже диалог за съобщаване на оценката, върната от DB2 оптимизатора в края на подготовката на SQL оператора за заявка.
Графичният прозорец ще покаже оценката на оптимизатора заедно с бутони, позволяващи на потребителя да избере дали желае да продължи по-нататъшното изпълнение на тази заявка, или да я отмени.
Препоръчваната стойност за DB2ESTIMATE е 60000.
Тази опция се използва само при връзка с DB2 версия 2 или по-нова база данни. За да се появи прозорецът, приложението трябва да има графичен интерфейс.
Ако тази опция се използва, CLI/ODBC опцията DEFERREDPREPARE ще се счита за изключена.
Тази ключова дума определя дали сървърът ще генерира обяснителна картина и/или обяснителна таблица с информация.
На сървъра ще бъдат изпратени операторите 'SET CURRENT EXPLAIN SNAPSHOT=NO' и 'SET CURRENT EXPLAIN MODE=NO', за да се изключат средствата за прихващане на информацията за обяснителната картина и таблица.
Към сървъра ще бъдат изпратени операторите 'SET CURRENT EXPLAIN SNAPSHOT=YES' и 'SET CURRENT EXPLAIN MODE=NO', за да се разреши средството за обяснителна картина и да се забрани средството за прихващане на информация за обяснителна таблица.
Към сървъра ще бъдат изпратени операторите 'SET CURRENT EXPLAIN MODE=YES' и 'SET CURRENT EXPLAIN SNAPSHOT=NO', за да се разреши средството за обяснителна таблица и да се забрани средството за прихващане на информация за обяснителна картина.
На сървъра ще бъдат изпратени операторите 'SET CURRENT EXPLAIN SNAPSHOT=YES' и 'SET CURRENT EXPLAIN MODE=YES', за да се включат средствата за прихващане на информацията за обяснителната картина и таблица.
Обяснителната информация се вкарва в обяснителни таблици, които трябва да бъдат създадени преди да бъде генерирана обяснителната информация. За повече информация относно тези таблици, вижте SQL Справочник.
Текущият идентификатор за оторизация трябва да има привилегия INSERT за обяснителните таблици.
Опция 1 е валидна само при свързване с DB2 Common Server версия 2.1.0 или по-нова база данни, а опции 2 и 3 - при свързване с DB2 Common Server версия 2.1.1 или по-нова
Ако тази опция е установена, DB2 CLI ще подаде следния SQL оператор след успешно свързване:
SET CURRENT QUERY OPTIMIZATION положително число
Това определя нивото на оптимизация на заявките, на което оптимизаторът трябва да обработва SQL заявките. Обърнете се към SQL Справочник за допустимите нива на оптимизация.
Тази опция позволява имена на източници на данни, по-дълги от 8 еднобайтови символа. Името на източника на данни (DSN) е името, затворено в квадратни скоби, което определя заглавната част във файла db2cli.ini (на платформи, където това е ASCII файл). Обикновено това заглавие на секция е псевдонима на базата данни, който има дължина най-много 8 байта. Потребителят, който желае да реферира източника на данни с помощта на по-дълго, по-смислено име, може да постави по-дълго име в заглавието на раздела и да настрои тази ключова дума на псевдонима на базата данни, използван в командата CATALOG. Ето един пример:
; По-дългото име се конвертира до dbalias от 8 еднобайтови символа [MyMeaningfulName] DBALIAS=DB2DBT10
Крайният потребител може да посочи [MyMeaningfulName] като име на източника на данни при свързване, докато истинският псевдоним на базата данни е DB2DBT10.
В 16-битова Windows ODBC среда под записа [ODBC DATA SOURCES] във файла ODBC.INI следните редова също трябва да бъдат обновени с дългия псевдоним (име_на_БД).
< alias >=IBM DB2 ODBC DRIVER
Тази опция се използва само при свързване с DB2 за MVS/ESA, и то само ако приложението изиска каталожна информация от (базовата) таблица. Ако на DB2 за MVS/ESA подсистемата съществуват по-голям брой таблици, име_на_БД може да бъде посочено, за да се намали времето за получаване на отговор на заявката на приложението и да се намали броя на използваните от приложението таблици.
Ако тази опция е настроена, операторът IN DATABASE име_на_БД ще бъде добавен към различни оператори като CREATE TABLE.
Тази стойност се трансформира в колоната DBNAME в таблиците на системния каталог на DB2 за MVS/ESA. Ако не се посочи стойност, или ако производни таблици, синоними, системни таблици или псевдоними също са указани чрез TABLETYPE, само информацията за таблицата ще бъде ограничена; производните таблици, синонимите, системните таблици и псевдонимите не се ограничават с DBNAME. Тя може да бъде използвана заедно с SCHEMALIST и TABLETYPE за по-нататъшно ограничаване на броя на таблиците, за които ще бъде връщана информация.
Тази опция трябва да бъде използвана само временно. Вместо това трябва да се използва каталогизираната таблица на запомнените процедури. Вижте SQL Справочник за повече информация.
Библиотеката, посочена чрез тази опция, ще бъде използвана при всички обръщения към запомнени процедури, които вече не указват явно таблица. Понеже указвате разположение на машината на сървъра, трябва да използвате формата на пътеката на тази операционна система, а не на клиента. За повече информация вижте оператора CALL statement в SQL Справочник.
Например, ако запомнените процедури се намират на сървъра в библиотечния файл d:\terry\proclib\comstor, може да настроите DEFAULTPROCLIBRARY на d:\terry\proclib\comstor, след което да извикате запомнената процедура func без посочването на библиотека. Резултатният SQL оператор, който ще бъде изпратен, ще бъде:
CALL d:\terry\proclib\comstor!func
Отлага изпращането на PREPARE заявка, докато не бъде подадена съответната заявка за изпълнение. Двете заявки след това се комбинират в един поток за команда/отговор (вместо в два), за да се минимизира мрежовия трафик и да се подобри производителността.
Поведението по подразбиране е променено в сравнение DB2 версия 2. Отложената подготовка сега е настройка по подразбиране и трябва явно да бъде изключена, ако се налага.
Ако DB2 Common Server базата данни приемник или DDCS шлюзът не поддържа отложена подготовка, клиентът забранява отложената подготовка за тази връзка.
Забележка: | Когато отложената подготовка е разрешена, редовата и ценова оценки, нормално връщани в SQLERRD(3) и SQLERRD(4) на SQLCA на PREPARE оператора, може да станат нула. Това може да има значение за потребителите, които искат да използват тези стойности, за да решат дали да продължат или не SQL оператор. |
Тази опция се изключва, ако CLI/ODBC опцията DB2ESTIMATE бъде настроена на стойност, различна от нула.
CLI/ODBC драйверът може да поддържа много конкурентни нишки.
Тази опция се използва за разрешаване или забраняване на поддръжката на много нишки.
Ако многонишковостта е забранена, всички обръщения за всички нишки ще бъдат сериализирани на ниво процес. Използвайте тази настройка за многонишкови приложения, които изискват сериализирано поведение от DB2 Версия 2.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Тази опция определя дали временният указател на сървъра може да бъде автоматично затворен, без да се затваря указателят на клиента, когато последният запис бъде изпратен на клиента.
Това спестява на CLI/ODBC драйвера мрежова заявка, като не подава оператора за явно затваряне на указател, защото знае, че указателят е вече затворен.
Разрешаването на тази опция ще ускори приложенията, които използват много малки резултантни набори.
Възможността EARLYCLOSE не се използва, освен ако:
Забележка: | Въпреки че тази опция може да бъде настроена по всяко време, използваната стойност е тази, която съществува при изпълнението на оператора (когато указателят бъде отворен). |
Тази опция може да се използва за намаляване на обема на върнатата информация, когато приложението получава списък с привилегии за таблици в база данни или колона в таблица. Списъкът от идентификатори за оторизация се използва като филтър; единствените върнати таблици и колони са тези, които имат привилегии, дадени НА тези идентификатори.
Настройте тази опция на списък от един или повече идентификатори за оторизация, на които са дадени привилегии, разграничени с единични кавички и разделени със запетайки. Целият низ също трябва да бъде затворен в двойни кавички. Например:
GRANTEELIST=" 'USER1', 'USER2', 'USER8' "
В горния пример, ако приложението получи списък с привилегии за определена таблица, само тези колони, които имат привилегии, дадени TO USER1, USER2 или USER8, ще бъдат върнати.
Тази опция може да се използва за намаляване на обема на върнатата информация, когато приложението получава списък с привилегии за таблици в база данни или колона в таблица. Списъкът от идентификатори за оторизация се използва като филтър; единствените върнати таблици и колони са тези, които имат привилегии, дадени ОТ тези потребители.
Настройте тази опция на списък от един или повече идентификатори за оторизация, на които са дадени привилегии, разграничени с единични кавички и разделени със запетайки. Целият низ също трябва да бъде затворен в двойни кавички. Например:
GRANTORLIST=" 'USER1', 'USER2', 'USER8' "
В горния пример, ако приложението получи списък с привилегии за определена таблица, само тези колони, които имат привилегии, дадени ОТ USER1, USER2 или USER8, ще бъдат върнати.
Тази опция управлява връщането на две свързани парчета информация от приложението:
Настройката по подразбиране е, че GRAPHIC не се връща, тъй като много от приложенията не разпознават този тип данни и не могат осигурят необходимата обработка.
Използвайте тази опция заедно с опцията SERVICENAME, за да зададете необходимите атрибути за TCP/IP свързване от тази клиентска машина към сървър, работещ с DB2. Тези две стойности важат само когато за опцията PROTOCOL е зададено TCPIP.
Задайте или име на хост на системата на сървъра или неговия IP адрес.
В редки случаи някои приложения не обработват правилно предупредителните съобщения. Тази опция може да бъде използвана, за да не бъдат пропускани предупрежденията от мениджъра на базата данни към приложението.
Въпреки че тази опция може да се използва самостоятелно, тя може да се използва и заедно с CLI/ODBC конфигурационната дума WARNINGLIST.
В редки случаи дадено приложение може да не обработва правилно някое предупредително съобщение, но не е желателно да се игнорират всички предупредителни съобщения. Тази ключова дума може да се използва за показване кои предупреждения да не бъдат подавани на приложението. Ключовата дума IGNOREWARNINGS трябва да се използва, ако трябва да се игнорират всички предупреждения на мениджъра на базата данни.
Ако даден sqlstate е включен в IGNOREWARNLIST и в WARNINGLIST, той ще бъде игнориран изцяло.
Всички sqlstate трябва да бъдат изписани с главни букви, разграничени с единични кавички и разделени със запетаи. Целият низ също трябва да бъде затворен в двойни кавички. Например:
IGNOREWARNLIST="'01000', '01004','01504'"
0 = Не кеширай връзките с базата данни (по подразбиране).
Настройването на тази опция на число, по-голямо от нула, може да ускори приложенията, които непрекъснато се свързват с и разкачат от една и съща база данни, използвайки същата информация за свързване.
Вместо връзката да се прекратява всеки път, след което пак да се създава, CLI/ODBC драйверът ще държи връзката отворена и ще кешира информацията за свързването. Когато за втори път се подаде заявка за връзка със същата база данни, ще бъде използвана съществуващата връзка. Това спестява време, ресурси и мрежов трафик за затваряне на първата връзка, както и за повторно отваряне на втората.
Стойността на тази опция указва броя на връзките с база данни за кеширане. Въпреки че максимумът се ограничава само от системните ресурси, обикновено стойност 1 или 2 е ефективна за приложения, които въобще могат да се възползват от тази възможност.
По подразбиране се кешира паметта, необходима за 5 указателя към оператори. Когато бъде затворен указател към оператор, паметта, използвана за този указател, се освобождава, но се използва при заделянето на указателя за следващия оператор.
Стойността на тази опция определя колко указатели към оператори се кешират. Тя може да бъде настроена на по-малко от 5 за изключително намаляване на паметта, използвана за кеширане на оператори. Тя може да бъде настроена и на число, по-голямо от 5, за да се подобри производителността на приложения, които отварят, затварят и след това пак отварят много оператори.
Максималният брой кеширани оператори зависи от системните ресурси.
Това ще замени стойността 2 Гигабайта (1G за DBCLOB), която се връща от SQLGetTypeInfo() за колоната COLUMN_SIZE за SQL_CLOB, SQL_BLOB и SQL_DBCLOB SQL типове данни. Следващите CREATE TABLE оператори, които съдържат LOB колони, ще използват размера на колоната, който сте задали тук вместо стойността по подразбиране.
Тази опция казва на DB2 CLI какъв тип данни очаква приложението, когато
работи с бази данни с колони с големи обекти (LOB).
Тип данни в базата данни | Големи обекти (0--по подразбиране) | Типове големи данни (1) |
---|---|---|
CLOB | SQL_CLOB | SQL_LONGVARCHAR |
BLOB | SQL_BLOB | SQL_LONGVARBINARY |
DBCLOB | SQL_DBCLOB | SQL_LONGVARGRAPHIC |
Тази опция е полезна при използването на ODBC приложения, които не могат да обработват данни от типове голям обект.
CLI/ODBC опцията LOBMAXCOLUMNSIZE може да бъде използвана заедно с тази опция за намаляване на размера по подразбиране, деклариран за данните.
Тази опция се използва за задаване на максималния брой връзки, позволени за всяко CLI/ODBC приложение. Това може да се използва за управление на максималния брой връзки, който администраторът желае да предостави на всяко приложение. Стойност 0 може да се използва за указване на без ограничения, при което дадено приложение може да отвори толкова връзки, колкото позволяват системните ресурси.
На OS/2 и WIN32 платформи (Windows NT и Windows 95), ако се използва протоколът NetBIOS, тази стойност отговаря на броя връзки (NetBIOS сесии), които ще бъдат едновременно използвани от приложението. Обхватът на стойностите за OS/2 NetBIOS е от 1 до 254. Задаването на 0 (по подразбиране) означава 5 запазени връзки. Запазените NetBIOS сесии не могат да бъдат използвани от други приложения. Броят на връзките, указан от параметъра, ще се отнася за всеки адаптер, който NetBIOS протоколът на DB2 използва за свързване с отдалечения сървър (номерът на адаптера се указва в директорията на възела за NetBIOS възел).
Настройва CONNECT режима на SHARE или EXCLUSIVE. Ако режимът се указва от приложението при свързване, тази стойност се игнорира. По подразбиране е SHARE.
Забележка: | EXCLUSIVE не е позволена за DRDA връзки. Вижте SQL Справочник за повече информация за оператора CONNECT. |
Тази опция се използва за указване на това, как SQLConnect() заявките се трансформират във физически връзки с бази данни.
Ако MULTICONNECT е настроено на 0, многозадачността трябва да бъде деактивирана чрез ключовата дума DISABLEMULTITHREAD
Забележка: | Ако MULTICONNECT е изключен, всички оператори се изпълняват на същата връзка и поради това в същата транзакция. Това значи, че ролбек ще направи ролбек на ВСИЧКИ оператори на всички връзки. Уверете се, че приложението е направено така, че да работи с изключен MULTICONNECT преди да го изключите, или приложението може да не работи правилно. |
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Тази опция ще добави клаузата "OPTIMIZE FOR n ROWS" към всеки избран оператор, където n е целочислена стойност, по-голяма от 0. Ако стойността е 0 (по подразбиране), тази клауза няма да бъде добавена.
За повече информация за ефекта от клаузата OPTIMIZE FOR n ROWS, вижте Ръководство за администриране.
Ако OPTIMIZESQLCOLUMNS е включено (настроено на 1), всички обръщения към SQLColumns() ще бъдат оптимизирани, ако са посочени явно (без символи за множествено посочване) име на схема, явно име на таблица и % (ВСИЧКИ колони) за име на колона. DB2 CLI/ODBC драйверът ще оптимизира това обръщение така, че системните таблици няма да бъдат сканирани. Ако обръщението е оптимизирано, COLUMN_DEF информацията (която съдържа подразбиращия се низ за колоните) не се връща. Когато се свързвате към AS/400 база данни, информацията, върната от SQLColumns(), за колоните, чиито тип данни е NUMERIC, ще бъде неправилна. Ако на приложението не е необходима тази информация, оптимизацията може да се включи, за да се подобри производителността.
Ако COLUMN_DEF информацията е необходима на приложението, OPTIMIZESQLCOLUMNS трябва да бъде настроено на 0. По подразбиране е така.
Тази ключова дума се използва за указване на решение на познати проблеми с ODBC приложения. Стойността може да не бъде указана, както и да бъде едно или много решения. Посочените тук стойностите на поправки се използват заедно с PATCH2 стойностите, които също може да са зададени.
С помощта на тетрадката CLI/ODBC Настройки може да изберете една или повече поправки, които да се използват. Ако настроите стойностите в самия файл db2cli.ini и искате да използвате много поправки, тогава просто ги съберете, за да се формира стойността на ключовата дума. Например, ако искате да използвате поправки 1, 4 и 8, задайте PATCH1=13.
Тетрадка CLI/ODBC настройка име списък на стойностите. Изберете папката Сервизни в папката DB2 за информация относно обновяването на списъка със стойности. Тази информация се съдържа и във файла README (няма да има такъв раздел във файла README, ако в момента няма поправки за тази платформа).
Тази ключова дума се използва за указване на решение на познати проблеми с CLI/ODBC приложения. Стойността може да не бъде указана, както и да бъде едно или много решения. Посочените тук стойностите на поправки се използват заедно с PATCH1 стойностите, които също може да са зададени.
Когато се задават много поправки, стойностите се задават в разделени със запетаи низове (за разлика от опция PATCH1, при която стойностите се събират и се използва сумата им).
За да зададете PATCH2 стойности 3, 4 и 8, вие ще посочите:
PATCH2="3, 4, 8"
Стойностите за PATCH2 се съдържат във файла README (няма да има такъв раздел във файла README, ако в момента няма поправки за тази платформа).
Показва съобщение на екрана всеки път, когато DB2 CLI генерира грешка, която може да бъде получена с помощта на SQLGetDiagRec() или SQLError(). Полезна е за дебъгване на приложения, които не показват съобщения на потребителите.
TCP/IP е единственият поддържан протокол, когато се използва File DSN. За опцията задайте низа TCPIP (без наклонена черта).
Когато е зададена тази опция, трябва да се зададат също и следните опции:
Тази парола се използва, ако приложението не посочи парола при свързването.
Тя се записва като обикновен текст и не е защитена.
Приложение може да използва функцията SQLSetStmtAttr(), за да зададе SQL_ATTR_QUERY_TIMEOUT атрибут на оператор. Той показва броя секунди, които трябва да се изчакат, за да се изпълни SQL операторът, преди да се осъществи връщане към приложението
Ключовата дума QUERYTIMEOUTINTERVAL се използва, за да се посочи колко време трябва да изчаква CLI драйверът между проверките за определяне дали е приключило запитването.
Нека да предположим например, че SQL_ATTR_QUERY_TIMEOUT е настроено на 25 секунди (таймаут след изчакване 25 секунди) и QUERYTIMEOUTINTERVAL е настроено на 10 секунди (проверка на запитването на всеки 10 секунди). Запитването няма да бъде прекъснато преди 30 секунди (първата проверка СЛЕД ограничението от 25 секунди).
Възможно е да има случаи, при които за SQL_ATTR_QUERY_TIMEOUT е зададена стойност, която е твърде малка, и запитването НЕ трябва да бъде прекъсвано. Ако приложението не може да се модифицира (т.е. то е ODBC приложение от друг доставчик), тогава за QUERYTIMEOUTINTERVAL може да се зададе 0 и CLI драйверът ще игнорира настройката SQL_ATTR_QUERY_TIMEOUT.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
SCHEMALIST се използва за получаване на по-малък отговор, като така се подобрява производителността за тези приложения, които искат списък за всяка таблица в DBMS.
Ако има голям брой таблици, дефинирани в базата данни, списъкът на схеми може да бъде дефиниран за намаляване времето за получаване на отговор на заявката на приложението за получаване на информация за таблиците и броя на получаваните от приложението таблици. Всички имена на схеми са чувствителни към главни букви, трябва да бъдат отделени с единични кавички и разделени със запетайки. Целият низ също трябва да бъде затворен в двойни кавички. Например:
SCHEMALIST="'USER1','USER2','USER3'"
За DB2 за MVS/ESA CURRENT SQLID също може да бъде включен в този списък, но без единичните кавички, например:
SCHEMALIST="'USER1',CURRENT SQLID,'USER3'"
Максималната дължина на низа е 256 символа.
Тази опция може да бъде използвана заедно с DBNAME и TABLETYPE за по-нататъшно ограничаване на броя на таблиците, за които ще бъде връщана информация.
Използвайте тази опция заедно с опцията HOSTNAME, за да зададете необходимите атрибути за TCP/IP свързване от тази клиентска машина към сървър, работещ с DB2. Тези две стойности важат само когато за опцията PROTOCOL е зададено TCPIP.
Задайте или име на услуга на системата на сървъра, или номера на порт.
Използвайте я заедно с опцията POPUPMESSAGE. Това не позволява на DB2 CLI да показва грешки, които са свързани с дефинираните състояния.
Всички SQLSTATE трябва да бъдат написани с главни букви, отделени с единични кавички и разделени със запетайки. Целият низ също трябва да бъде затворен в двойни кавички. Например:
SQLSTATEFILTER=" 'HY1090', '01504', '01508' "
Тази ключова дума се използва за задаване името на Capture File и незадължително директорията, в която той ще бъде записан.
За допълнителна информация относно изпълнението на CLI/ODBC приложения като статичен SQL, вижте ключовата дума STATICMODE.
Тази ключова дума се използва за задаване на Static Profiling журналния файл и незадължително директорията, в която той ще бъде записан.
За допълнителна информация относно изпълнението на CLI/ODBC приложения като статичен SQL, вижте ключовата дума STATICMODE.
Тази опция ви позволява да задавате как ще бъдат обработени SQL оператори, издадени от CLI/ODBC приложението за този DSN:
За допълнителна информация относно изпълнението на CLI/ODBC приложения като статичен SQL, вижте Последни бележки и CLI Ръководство и справочник Допълнителна информация е достъпна и в Интернет на адрес http://www.ibm.com/software/data/db2/udb/staticcli
Тази ключова дума се използва за задаване пакета, който да се използва, когато приложението е в режим Match. Трябва първо да използвате Capture Mode, за да създадете Capture File.
Ще се използват само първите 7 символа от посоченото име на пакет. Ще се добави суфикс от един байт, който ще представя всяко ниво на изолация, както следва:
За допълнителна информация относно изпълнението на CLI/ODBC приложения като статичен SQL, вижте ключовата дума STATICMODE.
Използвайте тази опция за указване колко комити и ролбекове ще бъдат координирани между много връзки с база данни (DUOW). Това е използваемо само когато типът на свързването по подразбиране е Координирани връзки (CONNECTTYPE = 2).
Мениджърът на транзакциите не се използва за извършване на двуфазен комит, а се използва еднофазен комит на работата, извършена от всяка база данни в транзакция на много бази данни.
Необходим е Мениджър на транзакциите за координиране на двуфазните комити между базите данни, които го поддържат.
Указва да бъде търсена алтернативна схема на мястото на схемите SYSIBM (или SYSTEM, QSYS2), когато се извикват DB2 CLI и ODBC Каталожни функции за получаване на информация за системния каталог.
Използвайки това име на схема, системният администратор може да дефинира
множество от производни таблици, състоящи се от подмножества от редовете за
всяка от следните каталожни таблици:
DB2 Universal Database | DB2 за MVS/ESA | DB2 за VSE и VM | OS/400 | DB2 Universal Database за 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 |
|
|
|
Например, ако множеството производни таблици за таблиците на системния каталог е в схемата ACME, тогава производната таблица за SYSIBM.SYSTABLES е ACME.SYSTABLES, а SYSSCHEMA трябва да бъде настроена на ACME.
Дефинирането и използването на ограничени производни таблици на таблиците на системния каталог намалява времето за получаване на отговор на заявката на приложението и броя на получаваните от приложението таблици.
Ако не бъде посочена стойност, по подразбиране е:
Тази ключова дума може да се използва заедно с SCHEMALIST и TABLETYPE (и DBNAME на DB2 за MVS/ESA) за по-нататъшно намаляване на броя на таблиците, за които се връща информация.
Ако има голям брой таблици, дефинирани в базата данни, tabletype низ може да бъде дефиниран за намаляване времето за получаване на отговор на заявката на приложението за получаване на информация за таблиците и броя на получаваните от приложението таблици.
Може да бъде посочено произволно число. Всички типове трябва да бъдат отделени с единични кавички и разделени със запетайки, както и да бъдат написани с главни букви. Целият низ също трябва да бъде затворен в двойни кавички. Например:
TABLETYPE="'TABLE','VIEW'"
Тази опция може да бъде използвана заедно с DBNAME и SCHEMALIST за по-нататъшно ограничаване на броя на таблиците, за които ще бъде връщана информация.
TABLETYPE се използва за указване на DB2 CLI функцията по подразбиране, която извлича списъка на таблиците, производните таблици, псевдонимите и синонимите в базата данни. Ако приложението не укаже тип на таблица при обръщението към функция и тази ключова дума не се използва, се връща информация за всички типове таблици. Ако приложението укаже стойност за tabletype в обръщението към функцията, тогава ще се използва стойността на този аргумент, вместо стойността на ключовата дума.
Ако TABLETYPE съдържа стойност, различна от TABLE, тогава настройването на ключовата дума DBNAME не може да бъде използвано за ограничаване на информацията до определена DB2 за MVS/ESA база данни.
Когато се работи с големи обекти (CLOBS, BLOBS и т.н.), често се създава временен файл на клиентската машина, в който се съхранява информация. С помощта на тази опция може да укажете разположението на тези временни файлове. Ако не бъде зададено нищо, ще бъде използвана системната временна директория.
Ключовата дума се намира в раздела за източниците на данни на файла db2cli.ini, и има следния синтаксис:
Когато се използва голям обект, ще бъде върнат SQLSTATE на HY507, ако името на пътеката е невалидно, или ако не могат да бъдат създадени временни файлове в указаната директория.
Когато тази опция е включена (1), CLI/ODBC трасиращите записи се добавят към файла, указан от конфигурационни параметър TRACEFILENAME или към файловете в поддиректорията, указана от конфигурационния параметър TRACEPATHNAME.
Например, за да се настрои файл на CLI/ODBC трасирането, който се записва на диска след всеки запис от трасирането:
[COMMON] TRACE=1 TRACEFILENAME=E:\TRACES\CLI\MONDAY.CLI TRACEFLUSH=1
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Когато TRACECOMM е настроено на (1), във файла на трасирането се включва информация за всяка мрежова заявка.
Тази опция се използва само когато опцията TRACE на CLI/ODBC е включена. За пример вижте TRACE.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Ако указаният файл не съществува, той се създава; иначе новата информация от трасирането се добавя към края на файла.
Ако посоченото име на файл е невалидно, файлът не може да бъде създаден или в него не може да се пише, няма да се трасира и ще бъде върнато съобщение за грешка.
Тази опция се използва само с включена опция TRACE. Това ще бъде направено автоматично, когато настроите тази опция в средството за конфигуриране на CLI/ODBC.
Вижте опцията TRACE за пример за използването на различни настройки на трасирането. Опцията TRACEPATHNAME ще бъде игнорирана, ако тази опция е зададена.
DB2 CLI трасирането трябва да бъде използвано само за дебъгване. То ще забави изпълнението на CLI/ODBC драйвера, а и информацията от трасирането може да стане твърде много, ако то бъде включено продължително време.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Включете тази опция (TRACEFLUSH = 1), за да форсирате записване на диска след всеки запис от трасирането. Това ще забави процеса на трасиране, но ще бъде сигурно, че всеки запис е записан на диска преди приложението да продължи със следващия оператор.
Тази опция се използва само когато опцията TRACE на CLI/ODBC е включена. За пример вижте опцията TRACE.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Всяка нишка или процес, които използват един и същ DLL или поделена библиотека, ще имат отделен файл на CLI/ODBC трасирането, създаден в указаната директория.
Няма да се трасира и няма да се върне съобщение за грешка, ако посочената поддиректория е невалидна или в нея не може да се записва.
Тази опция се използва само с включена опция TRACE. Това ще бъде направено автоматично, когато настроите тази опция в средството за конфигуриране на CLI/ODBC.
Вижте опцията TRACE за пример за използването на различни настройки на трасирането. Тя ще бъде игнорирана, ако се използва CLI/ODBC опцията TRACEFILENAME.
DB2 CLI трасирането трябва да бъде използвано само за дебъгване. То ще забави изпълнението на CLI/ODBC драйвера, а и информацията от трасирането може да стане твърде много, ако то бъде включено продължително време.
(Тази опция се съдържа в раздела Common на инициализационния файл и затова се отнася за всички връзки към DB2.)
Настройва нивото на изолация на:
Думите в скоби са термините на IBM за еквивалентните SQL92 нива на изолация. Забележете, че без комит не е SQL92 ниво на изолация и се поддържа само на DB2 Universal Database за AS/400. Вижте SQL Справочник за повече информация за нивата на изолация.
Тази ключова дума е приложима само ако се използва подразбиращото се ниво на изолация. Ако приложението специално е задало ниво на изолация, тази ключова дума няма да има ефект.
Посочената стойност потребителски_id се използва, ако приложението не укаже потребителски идентификатор при свързването.
Тази опция ви позволява да укажете дали знакът за подчертаване "_" ще се използва като глобален символ (съответстващ на всеки символ, включително и на липсата на символ), или ще бъде използван като себе си. Тази опция има ефект само върху каталожните функции, които приемат низове за търсене.
Знакът за подчертаване се третира като глобален символ, заместващ всеки символ, включително и липсата на символ. Например, ако две таблици са дефинирани по следния начин:
CREATE TABLE "OWNER"."KEY_WORDS" (COL1 INT) CREATE TABLE "OWNER"."KEYWORDS" (COL1 INT)
Обръщенията към DB2 CLI каталожните функции, които връщат таблична информация (SQLTables()), ще върнат и двата записа, ако "KEY_WORDS" е указан в аргумента за търсене на името на таблица.
Знакът за подчертаване се използва като обикновен символ. Ако две таблици са дефинирани като в примера по-горе, SQLTables() ще върне само записа "KEY_WORDS", ако "KEY_WORDS" е указан в аргумента за търсене на името на таблица.
Настройването на тази ключова дума на 0 може да доведе до подобряване на производителността в тези случаи, където имената на обектите (собственик, таблица, колона) в базата данни съдържат символа за подчертаване.
Забележка: | Тази ключова дума има ефект само върху DB2 common server версии, по-стари от Версия 2.1. Клаузата ESCAPE на предиката LIKE може да бъде използвана за следващите версии на всички други DB2 сървъри. За повече информация за клаузата ESCAPE, вижте SQL Справочник. |
Произволен брой SQLSTATE, върнати като грешки, могат да бъдат приемани за предупреждения. Всички те трябва да бъдат отделени с единични кавички, разделени със запетайки и написани с главни букви. Целият низ също трябва да бъде затворен в двойни кавички. Например:
WARNINGLIST=" '01S02', 'HY090' "
Тази опция може да бъде използвана заедно с конфигурационната CLI/ODBC ключова дума IGNOREWARNINGS. Ако включите IGNOREWARNINGS, тогава всички грешки, които се приемат за предупреждения, въобще няма да бъдат показвани.