Налаштування під час виконання
Поведінка цих функцій залежить від установок у php.ini.
ibm_db2 Опції налаштування
Имя | По умолчанию | Место изменения | Список изменений |
---|---|---|---|
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.binmode
int
Ця опція контролює режим конвертації з/в бінарні дані у програмі PHP.
-
1 (DB2_BINARY)
-
2 (DB2_CONVERT)
-
3 (DB2_PASSTHRU)
ibm_db2.i5_all_pconnect
int
Ця опція змушує всі з'єднання бути постійними в операційній системі IBM i. Фактично, всі виклики функції db2_connect() прозоро стають викликами функції db2_pconnect(). За замовчуванням ця опція дорівнює . Ця опція підвищує зручність у випадках коли постійні з'єднання працюють швидше. Її не потрібно викликати у нових додатках.
-
0 - можуть бути встановлені постійні та непостійні з'єднання.
-
1 — Усі з'єднання незмінні.
ibm_db2.i5_allow_commit
int
Ця опція керує режимом ізоляції транзакцій. За замовчуванням ця опція дорівнює тому контроль зобов'язань не буде використаний. Цю опцію можна перевизначити при підключенні, якщо ключ масиву i5_commit
установлен в переданном в функциюdb2_connect() або db2_pconnect() масиві налаштувань підключення.
-
0 - контроль зобов'язань не використовується.
-
1 - read uncommitted, можливе брудне читання.
-
2 - read committed, брудне читання неможливо.
-
3 - repeatable read, брудне і неповторне читання не можливі.
-
4 - serializeable, брудне читання, неповторне читання і фантоми не можливі.
ibm_db2.i5_blank_userid
int
Ця опція керує тим, чи має бути дозволений порожній ідентифікатор користувача в операційній системі IBM i. За замовчуванням значення цієї опції дорівнює . Відмінність цієї опції від опції ibm_db2.i5_ignore_userid
полягає в тому, що ця опція не змушує всі ідентифікатори користувачів бути порожніми або змінювати поведінку завдання, але дозволяє передавати порожній ідентифікатор користувача для підключення до СУБД Db2 в якості поточного користувача.
-
0 — Не дозволяйте передачу порожнього ідентифікатора користувача.
-
1 — Дозволяє надсилати порожній ідентифікатор користувача.
ibm_db2.i5_char_trim
int
Цей параметр керує тим, чи будуть обрізатися кінці рядків в операційній системі IBM i. Це підвищує зручність, оскільки у багатьох таблицях фіксовані розміри стовпців, доповнені пробілами. Значення цієї опції за промовчанням
-
0 - Стовпці не обрізаються.
-
1 — Прогалини в кінці стовпців символів, що повертаються, будуть видалені.
ibm_db2.i5_dbcs_alloc
int
Ця опція впливає на стратегію розподілу внутрішнього буфера операційних систем IBM i. За замовчуванням значення цієї опції дорівнює . Якщо ця опція встановлена, виділяються буфери більшого розміру, якщо база даних недооцінює розмір рядка під час перетворення між кодуванням. Для цієї опції потрібно в шість разів більше пам'яті для буферів (щоб врахувати можливі послідовності UTF-8), але може бути потрібна, якщо повертаються обрізані дані.
-
0 - Виділяється мінімальний розмір буферів.
-
1 — Виділення максимального розміру буферів.
ibm_db2.i5_guard_profile
int
Ця опція перевіряє, чи був переключений профіль користувача бази даних при підключенні до постійного з'єднання з базою даних в операційній системі IBM i, і якщо так, відключається від бази даних. За промовчанням для цієї опції встановлено значення
-
0 - Не перевіряти зміну профілів.
-
1 - Перевірити зміну профілів, і якщо так, відключати.
ibm_db2.i5_log_verbose
int
Ця опція встановлює, чи діагностичні повідомлення SQL на кшталт попереджень і помилок надсилатимуться до журналу помилок PHP в операційній системі IBM i. Зазвичай до PHP-логу надсилається лише коротке повідомлення про збій (наприклад, «виконання виразу не вдалося»), оскільки за замовчуванням значення цієї опції встановлено як . Зверніть увагу, що все ще можна і навіть потрібно викликати функцію db2_stmt_errormsg() вручну як частину перевірки того, чи функція не завершиться невдало.
-
0 — Реєструються лише короткі повідомлення.
-
1 — На додаток до коротких повідомлень реєструються діагностичні повідомлення SQL.
ibm_db2.i5_ignore_userid
int
Ця опція ігнорує ідентифікатор користувача при підключенні до бази даних під час роботи в операційній системі IBM i і запускає функціонал SQL/CLI всередині завдання PHP, а не окремого завдання. За замовчуванням значення цієї опції дорівнює . Якщо увімкнено, вона більше не використовує окреме завдання сервера бази даних і використовує лише поточний профіль користувача для бази даних, ігноруючи ім'я користувача та пароль, передані у функції db2_connect() і db2_pconnect()
-
0 — Використовує дані облікових даних та завдання SQL/CLI.
-
1 — Використовує порожні облікові дані та запускає SQL/CLI у завданні PHP.
ibm_db2.i5_job_sort
int
Керує опцією сортування завдань у операційній системі IBM i. За замовчуванням значення цієї опції дорівнює . Це відповідає значенню атрибута SQL/CLI **SQL_ATTR_CONN_SORT_SEQUENCE
**в IBM i.
-
0 — Використовує налаштування сортування констант**
*HEX
**, сортування за байтами. -
1 — Використовує послідовність сортування завдань, встановлену для PHP-завдання.
-
2 — Використовує послідовність сортування завдань, встановлену для завдання бази даних.
ibm_db2.i5_max_pconnect
int
Ця опція впливає на те, скільки разів постійне з'єднання можна перевикористовувати під час роботи в операційній системі IBM i. За замовчуванням значення цієї опції дорівнює , що означає, що постійне з'єднання можна використовувати повторно. Цей параметр допомагає уникнути проблем довгострокового завдання бази даних. (Тобто якщо процедура викликає витік пам'яті), але це явно не довгострокове рішення.
ibm_db2.i5_override_ccsid
int
Ідентифікатор PASE CCSID для перетворення символів із коду EBCDIC в операційній системі IBM i. За замовчуванням це , який вибере значення за промовчанням ідентифікатор CCSID для завдання оточення PASE, який буде взято з налаштувань мовного стандарту оточення PASE. Наприклад, установка для цієї опції значення 1208
використовуватиме кодування UTF-8. Цю опцію можна змінювати лише тоді, коли ідентифікатор CCSID завдання оточення PASE не відповідає ідентифікатору CCSID, який очікувався, і не можна змінити мовний стандарт.
Дізнатися більше про ідентифікатор CCSIDs операційної системи IBM i можна в » документації IBM. Дізнатися, як мовні стандарти в оточенні PASE системи IBM i зіставляються з ідентифікаторами CCSID можна також у » документації IBM
ibm_db2.i5_sys_naming
int
Ця опція керує режимом іменування при підключенні до IBM i. За замовчуванням значення цієї опції дорівнює . Режим іменування впливає спосіб дозволу імен і дозволений синтаксис імен. Якщо встановлено значення , для уточнення імен вона використовуватиме точки, а для дозволу імен - бібліотеку за промовчанням або ідентифікатор користувача. Якщо встановлено значення для уточнення імен вона використовуватиме слеші, а для вирішення імен — список бібліотек завдань.
-
0 — Використовувати режим іменування SQL (SCHEMA.TABLE).
-
1 — Використовувати режим системного іменування (LIBRARY/FILE).
Дізнатися більше про режими іменування в IBM i можна в » документації IBM
ibm_db2.i5_servermode-subsystem
string
Цей параметр змінює те, під якою підсистемою виконуються завдання сервера бази даних IBM i. За замовчуванням значення цієї опції дорівнює null
, тому завдання для QSQSRVR-завдань будуть виконуватися в підсистемі за промовчанням.
ibm_db2.instance_name
string
В операційних системах Linux та UNIX ця опція визначає ім'я екземпляра для каталогізованих підключень до бази даних. За замовчуванням значення цієї опції дорівнює null
. Якщо цю опцію встановлено, її значення перевизначає налаштування змінної оточення DB2INSTANCE.
Ця функція ігнорується в операційних системах Windows.