The explanation of ibm_db2.i5_dbcs_alloc seems to be hard to understand for me.
In ibm_db2 extension inside, 6 times length of string column is allocated if i5_dbcs_alloc value is 1.
The allocated area is used for conversion between UTF-8 and EBCDIC character encodings.
By the definition of UTF-8, letter length can need 6 bytes at the maximum.
Note:
In the case of a long column, allocated size may be beyond the upper limit defined in DB2 because original column is made by 6 times. It can cause result data becomes null.Конфигурација во време на извршување
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Конфигурација во време на извршување
Референца за `ibm-db2.configuration.php` со подобрена типографија и навигација.
Конфигурација во време на извршување
Поведението на овие функции е под влијание на поставките во php.ini.
| Име | Стандардно | Променливо | Дневник на промени |
|---|---|---|---|
| ibm_db2.binmode | "1" | INI_ALL |
|
| ibm_db2.i5_all_pconnect | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.6.5. |
| ibm_db2.i5_allow_commit | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.4.9. |
| ibm_db2.i5_blank_userid | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_char_trim | "0" | INI_SYSTEM |
Достапно од ibm_db2 2.1.0. |
| ibm_db2.i5_dbcs_alloc | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.5.0. |
| ibm_db2.i5_guard_profile | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_ignore_userid | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.8.0. |
| ibm_db2.i5_job_sort | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.8.4. |
| ibm_db2.i5_log_verbose | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_max_pconnect | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_override_ccsid | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_servermode_subsystem | NULL | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.i5_sys_naming | "0" | INI_SYSTEM |
Достапно од ibm_db2 1.9.7. |
| ibm_db2.instance_name | NULL | INI_SYSTEM |
Достапно од ibm_db2 1.0.2. |
Еве кратко објаснување на директивите за конфигурација.
-
ibm_db2.binmodeint -
Оваа опција ја контролира режимот што се користи за конвертирање на и од бинарни податоци во PHP апликацијата.
- 1 (DB2_BINARY)
- 2 (DB2_CONVERT)
- 3 (DB2_PASSTHRU)
-
ibm_db2.i5_all_pconnectint -
Оваа опција ги форсира сите конекции да бидат постојани на IBM i. Во основа, сите db2_connect() повици транспарентно стануваат db2_pconnect() повици. Стандардно, оваа опција е
0. Оваа опција е обезбедена како погодност за случаи каде што постојаните врски се побрзи. Не треба да се користи во нови апликации.- 0 - Може да се направат постојани и непостојани конекции.
- 1 - Сите конекции се постојани.
-
ibm_db2.i5_allow_commitint -
Оваа опција ја контролира користената трансакциска изолација. Стандардно, оваа опција е
0, така што контролата на обврските не се користи. Оваа опција може да се надмине при поврзување ако клучот на низатаi5_commitе поставен во низата со опции за конекција предадена на db2_connect() or db2_pconnect().- 0 - контролата на обврските не се користи
- 1 - прочитај непотврдено, можни се нечисти читања.
- 2 - прочитај потврдено, нечисти читања не се можни.
- 3 - повторливо читање, нечисти читања и неповторливи читања не се можни
- 4 - серијализирачки, нечисти читања, неповторливи читања и фаантоми не се можни
-
ibm_db2.i5_blank_useridint -
Ова ја контролира дозволата за празно корисничко име на IBM i. Стандардно, оваа опција е
0и го враќа делот одibm_db2.i5_ignore_userid, оваа опција не форсира сите кориснички имиња да бидат празни или да го променат однесувањето на работата, туку едноставно дозволува да се помине празно корисничко име, за поврзување со Db2 како тековен корисник.- 0 - Не дозволува да се помине празно корисничко име.
- 1 - Дозволува да се помине празно корисничко име.
-
ibm_db2.i5_char_trimint -
Оваа опција контролира дали крајот на низите се отсекува на IBM i. Бидејќи многу табели користат фиксни големини на колони исполнети со празни места, ова е обезбедено како погодност. Стандардно, оваа опција е
0.- 0 - Колоните не се отсекуваат.
- 1 - Празните места на крајот од вратените карактерни колони се отстрануваат.
-
ibm_db2.i5_dbcs_allocint -
Оваа опција влијае на стратегијата за алокација на внатрешниот бафер на IBM i. Стандардно, оваа опција е
0. Кога оваа опција е поставена, баферите се алоцираат со многу поголема големина, во случај базата на податоци да ја потцени големината на низата при конвертирање помеѓу кодирањата. Оваа опција користи шест пати повеќе меморија за бафери (за да се земе предвид најголемата можна UTF-8 секвенца), но можеби ќе биде потребна ако се вратат исечени податоци.- 0 - Се алоцираат бафери со минимална големина.
- 1 - Се алоцираат бафери со поголема големина.
-
ibm_db2.i5_guard_profileint -
Оваа опција проверува дали корисничкиот профил на базата на податоци бил сменет при поврзување со постојана врска со базата на податоци на IBM i, и ако е така, се исклучува од базата на податоци. Стандардно, оваа опција е поставена на
0.- 0 - Не проверувај за смени на профили.
- 1 - Проверувај за смени на профили и исклучи се ако е така.
-
ibm_db2.i5_log_verboseint -
Оваа опција поставува дали SQL дијагностичките пораки како предупредувања и грешки секогаш се испраќаат до PHP логот за грешки на IBM i. Нормално, само кратка порака при неуспех се испраќа (како што е "извршувањето на изјавата не успеа") до PHP логот за грешки, бидејќи оваа опција е поставена на
0стандардно. Имајте предвид дека сè уште можете и треба да повикате, на пр. db2_stmt_errormsg() рачно како дел од проверката дали функциите откажуваат.- 0 - Само логгира кратки пораки.
- 1 - Логгира SQL дијагностичка порака покрај кратката порака.
-
ibm_db2.i5_ignore_useridint -
Оваа опција го игнорира корисничкото име при поврзување со базата на податоци кога работи на IBM i, и ги извршува SQL/CLI функционалностите во рамките на PHP работата, наместо во посебна работа. Стандардно, оваа опција е
0. Кога е овозможено, веќе не користи посебна работа на сервер за бази на податоци, и секогаш го користи тековниот кориснички профил за базата на податоци, игнорирајќи го корисничкото име и лозинката предадени на db2_connect() and db2_pconnect().- 0 - Користи ги специфицираните акредитиви и користи SQL/CLI серверска работа.
- 1 - Секогаш користи празни акредитиви и работи SQL/CLI во PHP работата.
-
ibm_db2.i5_job_sortint -
Ја контролира опцијата за сортирање на задачите на IBM i. Стандардно, оваа опција е
0. Ова одговара на IBM i SQL/CLISQL_ATTR_CONN_SORT_SEQUENCEattribute.-
0 - Користи
*HEXопција за сортирање, сортирање по бајти. - 1 - Користи редослед на сортирање на задачите поставен за PHP задачата.
- 2 - Користи редослед на сортирање на задачите поставен за задачата на базата на податоци.
-
0 - Користи
-
ibm_db2.i5_max_pconnectint -
Ова ќе влијае на тоа колку пати постојана врска може повторно да се користи кога работи на IBM i. Стандардно, ова е поставено на
0, што значи дека постојана врска секогаш може повторно да се користи. Оваа опција може да помогне да се заобиколат проблеми во долготрајна задача на базата на податоци (т.е. ако процедура протекува меморија), но очигледно не е долгорочно решение. -
ibm_db2.i5_override_ccsidint -
PASE CCSID што треба да се користи за конверзии на знаци од EBCDIC на IBM i. Стандардно, ова е
0, што ќе го избере стандардниот PASE CCSID на задачата, кој доаѓа од поставките на локалот на PASE. На пример, поставувањето на ова на1208ќе користи UTF-8. Ова треба да се менува само ако PASE CCSID на задачата не е очекуваниот CCSID, и локалот не може да се менува. За да дознаете повеќе за CCSID на IBM i, консултирајте ја » IBM документација. За да дознаете како локалите на IBM i PASE се мапираат на CCSID, консултирајте го » IBM документација. -
ibm_db2.i5_sys_namingint -
Оваа опција ја контролира режимот на именување при поврзување со систем IBM i. Стандардно, оваа опција е
0. Режимот на именување влијае на тоа како се решаваат имињата и дозволената синтакса за имињата. Кога е поставено на0, ова користи точки за квалификување на имињата и го користи стандардниот список на библиотеки или корисничко ID за решавање на имињата. Кога е поставено на1, ова користи коси црти за квалификување на имињата и го користи списокот на библиотеки на задачите за решавање на имињата.- 0 - Користи SQL режим на именување ("SCHEMA.TABLE").
- 1 - Користи системски режим на именување ("LIBRARY/FILE").
-
ibm_db2.i5_servermode-subsystemstring -
Оваа опција ја менува подсистемот под кој работат задачите на серверот за бази на податоци на IBM i. Стандардно, оваа опција е
null, така што задачите ќе се извршуваат под стандардниот подсистем за QSQSRVR задачи. -
ibm_db2.instance_namestring -
, така што задачите ќе се извршуваат под стандардниот подсистем за QSQSRVR задачи.
Оваа опција се игнорира на Windows оперативните системи.nullНа Linux и UNIX оперативните системи, оваа опција го дефинира името на инстанцата што треба да се користи за каталогизирани врски со бази на податоци. Стандардно, оваа опција е . Ако оваа опција е поставена, нејзината вредност ја надминува поставката на променливата на опкружувањето DB2INSTANCE
Белешки од корисници 2 забелешки
The explanation of ibm_db2.i5_allow_commit seems to be slightly difficult to understand for me.
I think it would be better to replace "no commit" with "can not use commitment control" or "do not allow transaction", and "allow commit" would be changed into
"can use commitment control" or "allow transaction" , Thanks.