Настройка во время выполнения

Поведение этих функций зависит от установок в 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_subsystemNULLINI_SYSTEMДоступно с ibm_db2 1.9.7.
ibm_db2.i5_sys_naming"0"INI_SYSTEMДоступно с ibm_db2 1.9.7.
ibm_db2.instance_nameNULLINI_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() или db2_pconnect() массиве настроек подключения.

  • 0 — контроль обязательств не используется.

  • 1 — read uncommitted, возможно грязное чтение.

  • 2 — read committed, грязное чтение не возможно.

  • 3 — repeatable read, грязное и неповторяющееся чтение не возможны.

  • 4 — serializeable, грязное чтение, неповторяющееся чтение и фантомы не возможны.

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() и db2_pconnect().

  • 0 — Использует заданные учётные данные и задание сервера SQL/CLI.

  • 1 — Использует пустые учётные данные и запускает SQL/CLI в задании PHP.

ibm_db2.i5_job_sortint

Управляет опцией сортировки заданий в операционной системе IBM i. По умолчанию значение этой опции равно 0. Это соответствует значению атрибута SQL/CLI SQL_ATTR_CONN_SORT_SEQUENCE в IBM i.

  • 0 — Использует настройку сортировки *HEX, сортировка по байтам.

  • 1 — Использует последовательность сортировки заданий, установленную для PHP-задания.

  • 2 — Использует последовательность сортировки заданий, установленную для задания базы данных.

ibm_db2.i5_max_pconnectint

Эта опция влияет на то, сколько раз постоянное соединение можно переиспользовать при работе в операционной системе IBM i. По умолчанию значение этой опции равно 0, что означает — постоянное соединение можно использовать повторно. Этот параметр помогает обойти проблемы долгоработающего задания базы данных. (т. е. если процедура вызывает утечку памяти), но это явно не долгосрочное решение.

ibm_db2.i5_override_ccsidint

Идентификатор PASE CCSID для преобразования символов из кода EBCDIC в операционной системе IBM i. По умолчанию — это 0, который выберет значение по умолчанию идентификатор CCSID для задания окружения PASE, который будет взят из настроек языкового стандарта окружения PASE. Например, установка для этой опции значения 1208 будет использовать кодировку UTF-8. Эту опцию можно изменять только когда, когда идентификатор CCSID задания окружения PASE не соответствует идентификатору CCSID, который ожидался, и языковой стандарт нельзя изменить.

Узнать больше об идентификаторе CCSIDs операционной системы IBM i можно в » документации IBM. Узнать, как языковые стандарты в окружении PASE системы IBM i сопоставляются с идентификаторами CCSID можно также в » документации IBM.

ibm_db2.i5_sys_namingint

Эта опция управляет режимом именования при подключении к системе IBM i. По умолчанию значение этой опции равно 0. Режим именования влияет на способ разрешения имён и разрешённый синтаксис имён. Если задано значение 0, для уточнения имён она будет использовать точки, а для разрешения имён — библиотеку по умолчанию или идентификатор пользователя. Если задано значение 1, для уточнения имён она будет использовать слешы, а для разрешения имён — список библиотек заданий.

  • 0 — Использовать режим именования SQL («SCHEMA.TABLE»).

  • 1 — Использовать режим системного именования («LIBRARY/FILE»).

Узнать больше о режимах именования в системе IBM i можно в » документации IBM.

ibm_db2.i5_servermode-subsystemstring

Этот параметр изменяет то, под какой подсистемой выполняются задания сервера базы данных системы IBM i. По умолчанию значение этой опции равно null, поэтому задания для QSQSRVR-заданий будут выполняться в подсистеме по умолчанию.

ibm_db2.instance_namestring

В операционных системах Linux и UNIX эта опция определяет имя экземпляра для каталогизированных подключений к базе данных. По умолчанию значение этой опции равно null. Если эта опция установлена, её значение переопределяет настройку переменной окружения DB2INSTANCE.

Эта опция игнорируется в операционных системах Windows.

To Top