Configuration à l'exécution

Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.

Options de configuration DB2
NomDéfautModifiableHistorique
ibm_db2.binmode"1"INI_ALL 
ibm_db2.i5_all_pconnect"0"INI_SYSTEMDisponible à partir de ibm_db2 1.6.5.
ibm_db2.i5_allow_commit"0"INI_SYSTEMDisponible à partir de ibm_db2 1.4.9.
ibm_db2.i5_blank_userid"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_char_trim"0"INI_SYSTEMDisponible à partir de ibm_db2 2.1.0.
ibm_db2.i5_dbcs_alloc"0"INI_SYSTEMDisponible à partir de ibm_db2 1.5.0.
ibm_db2.i5_guard_profile"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_ignore_userid"0"INI_SYSTEMDisponible à partir de ibm_db2 1.8.0.
ibm_db2.i5_job_sort"0"INI_SYSTEMDisponible à partir de ibm_db2 1.8.4.
ibm_db2.i5_log_verbose"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_max_pconnect"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_override_ccsid"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_servermode_subsystemNULLINI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.i5_sys_naming"0"INI_SYSTEMDisponible à partir de ibm_db2 1.9.7.
ibm_db2.instance_nameNULLINI_SYSTEMDisponible à partir de ibm_db2 1.0.2.

Voici un éclaircissement sur l'utilisation des directives de configuration.

ibm_db2.binmode (int)

Cette option contrôle le mode utilisé pour convertir à partir ou vers les données binaires dans l'application PHP.

  • 1 (DB2_BINARY)

  • 2 (DB2_CONVERT)

  • 3 (DB2_PASSTHRU)

ibm_db2.i5_all_pconnect (int)

Cette option force toutes les connexions à être persistantes sur IBM i. Fondamentalement, tous les appels à db2_connect() deviennent automatiquement des appels à db2_pconnect(). Par défaut, cette option est 0. Cette option est fournie pour des raisons de commodité dans les cas où les connexions persistantes sont plus rapides. Elle ne devrait pas être utilisée dans de nouvelles applications.

  • 0 - Les connexions persistantes et non persistantes peuvent être établies.

  • 1 - Toutes les connexions sont persistantes.

ibm_db2.i5_allow_commitint

Cette option contrôle le mode d'isolation de la transaction utilisé. Par défaut, cette option est 0, donc le contrôle d'engagement n'est pas utilisé. Cette option peut être remplacée lors de la connexion si la clé de tableau i5_commit est définie dans le tableau d'options de connexion passé à db2_connect() ou db2_pconnect().

  • 0 - contrôle d'envoie n'est pas utilisé.

  • 1 - lire non envoyé, lecture sale possible.

  • 2 - lire envoyé, lecture sale impossible.

  • 3 - lecture répététable, lecture sale et lecture non répétable sont impossible.

  • 4 - sérialisable, lecture sale, lecture non répétabl, et phantôme sont impossible.

ibm_db2.i5_blank_useridint

Cela contrôle si un identifiant utilisateur vide doit être autorisé sur IBM i. Par défaut, cette option est 0. Contrairement à ibm_db2.i5_ignore_userid, cette option ne force pas tous les identifiants d'utilisateur à être vides ou à modifier le comportement du travail, mais permet simplement de passer un identifiant d'utilisateur vide, pour se connecter à Db2 en tant qu'utilisateur actuel.

  • 0 - Ne permet pas de passer un identifiant utilisateur vide.

  • 1 - Permet de passer un identifiant utilisateur vide.

ibm_db2.i5_char_trimint

Cette option contrôle si la fin des chaînes est tronquée sur IBM i. Étant donné que de nombreuses tables utilisent des tailles de colonnes fixes remplies d'espaces, cela est fourni par commodité. Par défaut, cette option est 0.

  • 0 - Les colonnes ne sont pas tronquées.

  • 1 - Les espaces à la fin des colonnes de caractères retournées sont supprimés.

ibm_db2.i5_dbcs_alloc (int)

Cette option affecte la stratégie d'allocation de mémoire tampon interne sur IBM i. Par défaut, cette option est 0. Lorsque cette option est définie, les tampons sont alloués avec une taille beaucoup plus grande, au cas où la base de données sous-estimerait la taille d'une chaîne lors de la conversion entre les encodages. Cette option utilise six fois plus de mémoire pour les tampons (pour prendre en compte les séquences UTF-8 les plus grandes possibles), mais peut être nécessaire si des données tronquées sont renvoyées.

  • 0 - Des tampons de taille minimale sont alloués.

  • 1 - Des tampons de taille plus grande sont alloués.

ibm_db2.i5_guard_profileint

Cette option vérifie si le profil utilisateur de la base de données a été changé lors de la connexion à une connexion de base de données persistante sur IBM i, et si c'est le cas, elle se déconnecte de la base de données. Par défaut, cette option est définie sur 0.

  • 0 - Ne pas vérifier les changements de profil.

  • 1 - Vérifier les changements de profil et se déconnecter le cas échéant.

ibm_db2.i5_log_verboseint

Cette option définit si les messages diagnostiques SQL tels que les avertissements et les erreurs sont toujours envoyés dans le journal d'erreurs PHP sur IBM i. Normalement, seul un bref message en cas d'échec est envoyé (tel que "l'exécution de la déclaration a échoué") dans le journal d'erreurs PHP, car cette option est définie sur 0 par défaut. Notez que vous pouvez toujours et devriez appeler, par exemple, db2_stmt_errormsg() manuellement pour vérifier si les fonctions échouent.

  • 0 - Ne journalise que des messages brefs.

  • 1 - Journalise le message diagnostique SQL en plus du message bref.

ibm_db2.i5_ignore_userid (int)

Cette option ignore l'ID utilisateur lors de la connexion à la base de données lors de l'exécution sur IBM i, et exécute la fonctionnalité SQL/CLI à l'intérieur du travail PHP, au lieu d'un travail séparé. Par défaut, cette option est 0. Lorsqu'elle est activée, elle n'utilise plus un travail de serveur de base de données séparé, et utilise toujours le profil utilisateur actuel pour la base de données, ignorant le nom d'utilisateur et le mot de passe transmis à db2_connect() et db2_pconnect().

  • 0 : db2_(p)connect avec un identifiant utilisateur et un mot de passe spécifique 0 - Utilise les informations d'identification spécifiées et utilise un travail de serveur SQL/CLI.

  • 1 : db2_(p)connect avec un identifiant utilisateur et un mot de passe vide 1 - Utilise toujours des informations d'identification vides et exécute SQL/CLI dans le travail PHP.

ibm_db2.i5_job_sortint

Contrôle l'option de tri des travaux sur IBM i. Par défaut, cette option est 0. Cela correspond à l'attribut SQL_ATTR_CONN_SORT_SEQUENCE d'IBM i SQL/CLI.

  • 0 - Utilise l'option de tri *HEX, triant par octets.

  • 1 - Utilise la séquence de tri de travail définie pour le travail PHP.

  • 2 - Utilise la séquence de tri de travail définie pour le travail de base de données.

ibm_db2.i5_max_pconnectint

Cela affectera combien de fois une connexion persistante peut être réutilisée lors de l'exécution sur IBM i. Par défaut, cela est réglé sur 0, ce qui signifie qu'une connexion persistante peut toujours être réutilisée. Cette option peut aider à contourner les problèmes dans un travail de base de données de longue durée (c'est-à-dire si une procédure perd de la mémoire), mais n'est évidemment pas une solution à long terme.

ibm_db2.i5_override_ccsidint

Le CCSID PASE à utiliser pour les conversions de caractères d'EBCDIC sur IBM i. Par défaut, c'est 0, ce qui sélectionnera le CCSID de travail PASE par défaut, provenant des paramètres de localisation PASE. Par exemple, en le réglant sur 1208, on utilisera l'UTF-8. Cela ne doit être modifié que si le CCSID du travail PASE n'est pas le CCSID attendu, et que la localisation ne peut pas être modifiée.

Pour en savoir plus sur les CCSID sur IBM i, consultez la » documentation IBM. Pour savoir comment les localisations sur IBM i PASE sont mappées sur les CCSID, consultez la » documentation IBM.

ibm_db2.i5_sys_namingint

Cette option contrôle le mode de nommage lors de la connexion à un système IBM i. Par défaut, cette option est 0. Le mode de nommage affecte la résolution des noms et la syntaxe autorisée pour les noms. Lorsqu'il est réglé sur 0, cela utilise des points pour qualifier les noms et utilise la bibliothèque ou l'ID utilisateur par défaut pour résoudre les noms. Lorsqu'il est réglé sur 1, cela utilise des barres obliques pour qualifier les noms et utilise la liste de bibliothèques de travail pour résoudre les noms.

  • 0 - Utilise le mode de nommage SQL ("SCHEMA.TABLE").

  • 1 - Utilise le mode de nommage système ("LIBRARY/FILE").

Pour en savoir plus sur les modes de nommage sur IBM i, consultez la » documentation IBM.

ibm_db2.i5_servermode-subsystemstring

Cette option modifie le sous-système sous lequel les travaux du serveur de base de données s'exécutent sur IBM i. Par défaut, cette option est null, donc les travaux s'exécuteront sous le sous-système par défaut pour les travaux QSQSRVR.

ibm_db2.instance_namestring

Sur les systèmes d'exploitation Linux et UNIX, cette option définit le nom de l'instance à utiliser pour les connexions de base de données cataloguées. Par défaut, cette option est null. Si cette option est définie, sa valeur remplace le réglage de la variable d'environnement DB2INSTANCE.

Cette option est ignorée sur les systèmes d'exploitation Windows.

To Top