Поведение функций зависит от установок в файле 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.binmode
int
Опция управляет в PHP-приложении режимом конвертации из бинарных данных и обратно.
ibm_db2.i5_all_pconnect
int
Опция делает все соединения постоянными в операционной системе IBM i.
По существу, вызовы функции db2_connect() прозрачно становятся вызовами
функции db2_pconnect().
Значение по умолчанию — 0.
Опция полезна, если постоянные соединения работают быстрее.
В новых приложениях опцию не указыают.
ibm_db2.i5_allow_commit
int
Опция управляет режимом изоляции транзакций.
По умолчанию эта опция равна 0, поэтому контроль обязательств не будет использован.
Эту опцию можно переопределить при подключении, если ключ массива
i5_commit установлен в переданном в функцию db2_connect()
или db2_pconnect() массиве настроек подключения.
ibm_db2.i5_blank_userid
int
Опция определяет, разрешать ли пустой идентификатор пользователя в операционной системе IBM i.
Значение по умолчанию — 0.
В отличие от опции ibm_db2.i5_ignore_userid эта опция
не заставляет все идентификаторы пользователей быть пустыми или изменять поведение задания,
но просто разрешает передавать пустой идентификатор пользователя для подключения к СУБД Db2
в качестве текущего пользователя.
ibm_db2.i5_char_trim
int
Опция определяет, требуется ли обрезать концы строк в операционной системе IBM i.
Это повышает удобство, поскольку во многих таблицах фиксированные размеры
столбцов, дополненные пробелами.
Значение этой опции по умолчанию — 0.
ibm_db2.i5_dbcs_alloc
int
Опция влияет на стратегию распределения внутреннего буфера в операционных системах IBM i.
Значение по умолчанию — 0.
Если эта опция установлена, выделяются буферы большего размера,
если база данных недооценивает размер строки при преобразовании
между кодировками.
Для этой опции нужно в шесть раз больше памяти для буферов (чтобы учесть
предельно возможные последовательности UTF-8), но может быть нужна, если возвращаются
обрезанные данные.
ibm_db2.i5_guard_profile
int
Опция проверяет, был ли переключён профиль пользователя базы данных при
подключении к постоянному соединению с базой данных в операционной системе IBM i,
и если так, отключается от базы данных.
По умолчанию для этой опции установлено значение 0.
ibm_db2.i5_log_verbose
int
Опция устанавливает, будут ли диагностические сообщения SQL наподобие предупреждений и ошибок
отправляться в журнал ошибок PHP в операционной системе IBM i.
Обычно в PHP-лог отправляется только короткое сообщение о сбое (например, «выполнение
выражения не удалось»), поскольку по умолчанию значение этой опции
установлено как 0.
Обратите внимание, что всё ещё можно и даже нужно вызывать
функцию db2_stmt_errormsg() вручную как часть проверки
того, не завершится ли функция неудачно.
ibm_db2.i5_ignore_userid
int
Опция игнорирует идентификатор пользователя при подключении к базе данных
при работе в операционной системе IBM i и запускает функционал SQL/CLI внутри задания PHP,
а не отдельного задания.
По умолчанию значение опции равно 0.
При включении опция больше не использует отдельное задание сервера базы данных
и использует только текущий профиль пользователя для базы данных, игнорируя имя пользователя
и пароль, которые передали в функции db2_connect()
и db2_pconnect().
ibm_db2.i5_job_sort
int
Управляет опцией сортировки заданий в операционной системе IBM i.
Значение по умолчанию — 0.
Это соответствует значению атрибута SQL/CLI
SQL_ATTR_CONN_SORT_SEQUENCE в IBM i.
*HEX, сортировка по байтам.
ibm_db2.i5_max_pconnect
int
0, что означает — постоянное
соединение доступно для повторных запросов.
Параметр помогает обойти проблемы долгоработающего задания базы данных —
при утечке памяти в процедуре, но это явно не долгосрочное
решение.
ibm_db2.i5_override_ccsid
int
0, который выберет значение по умолчанию
идентификатор CCSID для задания окружения PASE, который будет взят из настроек языкового стандарта окружения PASE.
Например, установка для этой опции значения 1208 будет использовать кодировку UTF-8.
Опцию изменяют, только если CCSID-идентификатор задания PASE-окружения не соответствует
идентификатору CCSID, который ожидался, и языковой стандарт нельзя изменить.
Подробнее о CCSID-идентификаторах в операционной системы IBM i
рассказывает » документация IBM.
О сопоставлении языковых стандартов в окружении PASE системы IBM i с идентификаторами CCSID
рассказывает другая » страница документации IBM.
ibm_db2.i5_sys_naming
int
Опция управляет режимом именования при подключении к системе IBM i.
Значение по умолчанию — 0.
Режим именования влияет на способ разрешения имён и разрешённый синтаксис
имён.
Если задано значение 0, для уточнения имён она будет использовать точки,
а для разрешения имён — библиотеку по умолчанию или идентификатор пользователя.
Если задано значение 1, для уточнения имён она будет использовать слеши,
а для разрешения имён — список библиотек заданий.
ibm_db2.i5_servermode-subsystem
string
null, поэтому задания для QSQSRVR-заданий
выполняются в подсистеме по умолчанию.
ibm_db2.instance_name
string
В операционных системах Linux и UNIX опция определяет имя экземпляра
для каталогизированных подключений к базе данных.
Значение по умолчанию — null.
Значение опции переопределяет
настройку переменной окружения DB2INSTANCE.