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.
Configuración en tiempo de ejecución
El comportamiento de estas funciones se ve afectado por la configuración de php.ini.
| Nombre | Por defecto | Cambiable | Registro de cambios |
|---|---|---|---|
| ibm_db2.binmode | "1" | PHP_INI_ALL | |
| ibm_db2.i5_all_pconnect | "0" | PHP_INI_SYSTEM | Disponible desde ibm_db2 1.6.5. |
| ibm_db2.i5_allow_commit | "0" | PHP_INI_SYSTEM | Disponible desde ibm_db2 1.4.9. |
| ibm_db2.i5_dbcs_alloc | "0" | PHP_INI_SYSTEM | Disponible desde ibm_db2 1.5.0. |
| ibm_db2.instance_name | NULL | PHP_INI_SYSTEM | Disponible desde ibm_db2 1.0.2. |
| ibm_db2.i5_ignore_userid | "0" | PHP_INI_SYSTEM | Disponible desde ibm_db2 1.8.0. |
He aquí una breve explicación de las directivas de configuración.
- ibm_db2.binmode integer
-
Esta opción controla el modo que se usará para convertir desde y hasta datos binarios en la aplicación PHP.
-
1 (DB2_BINARY)
-
2 (DB2_CONVERT)
-
3 (DB2_PASSTHRU)
-
- ibm_db2.i5_all_pconnect integer
-
Esta opción sobrescribe la apertura y cierre i5 db2_connect() dentro de PHP. Cuando ibm_db2.i5_all_pconnect = 1, todas las conexiones de db2 serán persistentes (db2_pconnect()). En i5/OS, db2_pconnect() lo realiza significativamente mejor, empleando menos recurso de máquina que db2_connect(). Es un buen reemplazo de db2_connect() para invocar db2_pconnect() sin modificaciones del código fuente de PHP.
-
0 db2_connect() apertura y cierre completo por omisión
-
1 db2_connect() sobrescribe db2_pconnect() sólo en conexiones persistentes
-
- ibm_db2.i5_allow_commit integer
-
Esta opción controla el modo de 'commit' (aplicar cambios) que se usa en conelciones de esquemas i5 en aplicaciones PHP.
-
0 sin commit (vea i5_commit para sobrescribir)
-
1 permite commit (vea i5_commit para sobrescribirlo)
-
- ibm_db2.i5_dbcs_alloc integer
-
Esta opción controla la ubicación interna de esquemas ibm_db2 en buffers de columnas DBCS de gran tamaño.
-
0 sin expandir su ubicación (vea i5_dbcs_alloc para sobrescribirlo)
-
1 usa ubicaciones expandidas (vea i5_dbcs_alloc para sobrescribirlo)
-
- ibm_db2.instance_name string
-
En sistemas Linux y Unix, esta opción declara el nombre de instancia que se utilizará para catalogar las conexiones a bases de datos. Si se estableciera un valor, sobrescribirá la variable de entorno DB2INSTANCE.
En sistemas operativos Windows, esta opción se ignora.
- ibm_db2.i5_ignore_userid integer
-
Esta opción establece el id de usuario y la contraseña en i5 db2_(p)connect dentro de una aplicación PHP. Cuando ibm_db2.i5_ignore_userid = 1, todas las conexiones db2 establecen a null el id de usuario y la contraseña. De ese modo, las tareas de Apache usarán el perfil activo (NOBODY). Este perfil es útil sobre todo en páginas web sencillas basadas en DB2 que no necesiten cambiar perfiles, y por tanto se pueda evitar todo el consumo adicional del modo de servidor de tareas QSQSRVR adicionales. Es un remplazo conveiente de db2_(p)connect para asignar null en los valores de userid y password sin tener que modificar el fuente de PHP. Se puede usar junto con ibm_db2.i5_all_pconnect = 1.
-
0 db2_(p)connect - conecta con el id de usuario y contraseña especificados
-
1 db2_(p)connect - establece a null el id de usuario y contraseña de la conexión
-
