Fonctions ODBC et DB2 (PDO_ODBC)
Introduction
PDO_ODBC est un pilote qui implémente l'interface de PHP Data Objects (PDO) pour autoriser l'accès de PHP aux bases de données par les pilotes de ODBC ou par la bibliothèque d'interface IBM DB2 Call Level (DB2 CLI). PDO_ODBC supporte actuellement trois "saveurs" différentes des pilotes de bases de données :
- ibm-db2
-
Supporte l'accès à IBM DB2 Universal Database, Cloudscape et Apache Derby Server à l'aide du client gratuit DB2.
- unixODBC
-
Supporte l'accès aux serveurs de base de données à l'aide du pilote de gestion unixODBC et les bases de données possédées par les pilotes ODBC.
- generic
-
Offre une option de compilation pour les pilotes de gestion ODBC qui ne sont pas explicitement supportés par PDO_ODBC.
Sur Windows, PDO_ODBC est construit dans le noyau de PHP par défaut. Il est lié avec le Windows ODBC Driver Manager, c'est pourquoi PHP peut se connecter à n'importe quelle base de données cataloguée comme étant un System DSN. De plus, PDO_ODBC est le pilote recommandé pour se connecter aux bases de données Microsoft SQL Server.
Installation
-
À partir de PHP 5.1, PDO_ODBC est inclus dans les sources de PHP. Vous pouvez compiler l'extension PDO_ODBC soit en statique ou en module partagé en utilisant les commandes configure suivantes.
- ibm_db2
-
./configure --with-pdo-odbc=ibm-db2,/opt/IBM/db2/V8.1/
Si vous ne spécifiez pas d'emplacement pour les bibliothèques et les en-têtes de DB2 à la commande configure, PDO_ODBC prendra par défaut /home/db2inst1/sqllib.
- unixODBC
-
./configure --with-pdo-odbc=unixODBC,/usr/local
- generic
-
./configure --with-pdo-odbc=generic,/usr/local,libname,ldflags,cflags
Configuration à l'exécution
Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
Nom | Défaut | Modifiable | Historique |
---|---|---|---|
pdo_odbc.connection_pooling | "strict" | PHP_INI_ALL | Disponible depuis PHP 5.1.0. |
pdo_odbc.db2_instance_name | NULL |
PHP_INI_SYSTEM | Disponible depuis PHP 5.1.1. Cette fonctionnalité obsolète sera certainement supprimée dans le futur. |
Voici un éclaircissement sur l'utilisation des directives de configuration.
-
pdo_odbc.connection_pooling
string -
Pour mettre en commun les connexions ODBC. Peut être "strict", "relaxed" ou "off" (égal à ""). Le paramètre décrit comment la gestion de la connexion stricte devrait être lorsque les paramètres de connexion se ressemblent pour des connexions mises en commun.
strict
est la valeur par défaut recommandée et permettra l'utilisation des connexions en cache lorsque des paramètres de connexion similaires sont utilisés.relaxed
permettra d'utiliser des connexions mises en cache lorsque des paramètres de connexion similaire seront utilisés. Cela peut augmenter l'utilisation du cache au risque de noyer les informations de connexion entre (par exemple) des serveurs virtuels.Cette configuration peut seulement être changé à partir du fichier php.ini et affecte le processus entier; n'importe quels autres modules chargé dans le processus qui utilisent les bibliothèques ODBC sera aussi affecté, en incluant l'extension unifié ODBC.
Avertissementrelaxed
ne devrait pas être utilisé sur les serveurs partagés, pour des raisons de sécurité.AstuceLaissez cette configuration à la valeur par défaut
strict
à moins que vous ayez une bonne raison pour la changer. -
pdo_odbc.db2_instance_name
string -
Si vous compilez PDO_ODBC en utilisant db2, cette configuration fixe la valeur de la variable d'environnement DB2INSTANCE sur les systèmes d'exploitation Linux et UNIX au nom spécifié de l'instance DB2. Ceci permet à PDO_ODBC de résoudre le chemin des bibliothèques DB2 et de faire des connexions cataloguées aux bases de données DB2.
Cette configuration peut seulement être changée à partir du fichier php.ini et affecte le processus entier; n'importe quels autres modules chargés dans le processus qui utilisent les même bibliothèques ODBC seront aussi affectés, incluant l'extension unifiée ODBC.
Cette configuration n'a aucun effet sur Windows.
Sommaire
- PDO_ODBC DSN — Connexion aux bases de données ODBC ou DB2
Version en cache
22/12/2024 21:58:23 Cette version de la page est en cache (à la date du 22/12/2024 21:58:23) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-ref.pdo-odbc.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.