Поведение функций зависит от установок в файле 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.
1 (DB2_BINARY)
2 (DB2_CONVERT)
3 (DB2_PASSTHRU)
ibm_db2.i5_all_pconnect
int
Эта опция принуждает принуждает все соединения быть постоянными в операционной системе IBM i.
По существу, все вызовы функции db2_connect() прозрачно становятся вызовами
функции db2_pconnect().
По умолчанию эта опция равна 0
.
Эта опция повышает удобство в случаях, когда постоянные
соединения работают быстрее.
Её не нужно вызывать в новых приложениях.
0 — могут быть установлены постоянные и непостоянные соединения.
1 — Все соединения постоянны.
ibm_db2.i5_allow_commit
int
Эта опция управляет режимом изоляции транзакций.
По умолчанию эта опция равна 0
, поэтому контроль обязательств не будет использован.
Эту опцию можно переопределить при подключении, если ключ массива
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.
По умолчанию значение этой опции равно 0
.
Отличие этой опции от опции ibm_db2.i5_ignore_userid
состоит в том, что эта опция
не заставляет все идентификаторы пользователей быть пустыми или изменять поведение задания,
но просто разрешает передавать пустой идентификатор пользователя для подключения к СУБД Db2
в качестве текущего пользователя.
0 — Не разрешать передачу пустого идентификатора пользователя.
1 — Разрешать передачу пустого идентификатора пользователя.
ibm_db2.i5_char_trim
int
Этот параметр управляет тем, будут ли обрезаться концы строк в операционной системе IBM i.
Это повышает удобство, поскольку во многих таблицах фиксированные размеры
столбцов, дополненные пробелами.
Значение этой опции по умолчанию — 0
.
0 — Столбцы не обрезаются.
1 — Пробелы в конце столбцов возвращаемых символов будут удалены.
ibm_db2.i5_dbcs_alloc
int
Эта опция влияет на стратегию распределения внутреннего буфера в операционных системах IBM i.
По умолчанию значение этой опции равно 0
.
Если эта опция установлена, выделяются буферы большего размера,
если база данных недооценивает размер строки при преобразовании
между кодировками.
Для этой опции нужно в шесть раз больше памяти для буферов (чтобы учесть
предельно возможные последовательности UTF-8), но может быть нужна, если возвращаются
обрезанные данные.
0 — Выделяется минимальный размер буферов.
1 — Выделяется максимальный размер буферов.
ibm_db2.i5_guard_profile
int
Эта опция проверяет, был ли переключён профиль пользователя базы данных при
подключении к постоянному соединению с базой данных в операционной системе IBM i,
и если так, отключается от базы данных.
По умолчанию для этой опции установлено значение 0
.
0 — Не проверять смену профилей.
1 — Проверять смену профилей, и если так, — отключать.
ibm_db2.i5_log_verbose
int
Эта опция устанавливает, будут ли диагностические сообщения SQL наподобие предупреждений и ошибок
отправляться в журнал ошибок PHP в операционной системе IBM i.
Обычно в PHP-лог отправляется только короткое сообщение о сбое (например, «выполнение
выражения не удалось»), поскольку по умолчанию значение этой опции
установлено как 0
.
Обратите внимание, что всё ещё можно и даже нужно вызывать
функцию db2_stmt_errormsg() вручную как часть проверки
того, не завершится ли функция неудачно.
0 — Регистрируются только короткие сообщения.
1 — В дополнение к коротким сообщениям регистрируются диагностические сообщения SQL.
ibm_db2.i5_ignore_userid
int
Эта опция игнорирует идентификатор пользователя при подключении к базе данных
при работе в операционной системе IBM i и запускает функционал SQL/CLI внутри задания PHP,
а не отдельного задания.
По умолчанию значение этой опции равно 0
.
Если опция включена, она больше не использует отдельное задание сервера базы данных
и использует только текущий профиль пользователя для базы данных, игнорируя имя пользователя
и пароль, которые передали в функции db2_connect()
и db2_pconnect().
0 — Использует заданные учётные данные и задание сервера SQL/CLI.
1 — Использует пустые учётные данные и запускает SQL/CLI в задании PHP.
ibm_db2.i5_job_sort
int
Управляет опцией сортировки заданий в операционной системе IBM i.
По умолчанию значение этой опции равно 0
.
Это соответствует значению атрибута SQL/CLI
SQL_ATTR_CONN_SORT_SEQUENCE
в IBM i.
0 — Использует настройку сортировки *HEX
, сортировка по байтам.
1 — Использует последовательность сортировки заданий, установленную для PHP-задания.
2 — Использует последовательность сортировки заданий, установленную для задания базы данных.
ibm_db2.i5_max_pconnect
int
Эта опция влияет на то, сколько раз постоянное соединение можно переиспользовать
при работе в операционной системе IBM i.
По умолчанию значение этой опции равно 0
, что означает — постоянное
соединение можно использовать повторно.
Этот параметр помогает обойти проблемы долгоработающего задания базы данных.
(т. е. если процедура вызывает утечку памяти), но это явно не долгосрочное
решение.
ibm_db2.i5_override_ccsid
int
Идентификатор 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_naming
int
Эта опция управляет режимом именования при подключении к системе IBM i.
По умолчанию значение этой опции равно 0
.
Режим именования влияет на способ разрешения имён и разрешённый синтаксис
имён.
Если задано значение 0
, для уточнения имён она будет использовать точки,
а для разрешения имён — библиотеку по умолчанию или идентификатор пользователя.
Если задано значение 1
, для уточнения имён она будет использовать слешы,
а для разрешения имён — список библиотек заданий.
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.