LV. Ingres II

Introduction

Ces fonctions permettent l'accès à un serveur de base de données Ingres II.

Note : Si vous avez déjà utilisé des extensions PHP permettant l'accès à d'autres serveurs de bases de données, notez qu'Ingres n'accepte pas de requêtes et/ou de transactions concurrentes sur la même connexion, et donc vous ne trouverez aucun identifiant de résultat ou de transaction dans cette extension. Le résultat d'une requête doit être traité avant d'envoyer une autre requête, et une transaction doit être validée ("commit") ou annulée ("roll back") avant de pouvoir en ouvrir une nouvelle (l'ouverture de transaction est faite automatiquement à l'envoi de la première requête).

Avertissement

Ce module est EXPERIMENTAL. Cela signifie que le comportement de ces fonctions, leurs noms et concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS! Soyez-en conscient, et utilisez ce module à vos risques et périls.

Pré-requis

Pour compiler PHP avec le support Ingres, vous aurez besoin de la bibliothèque ouverte et des fichiers d'en-têtes fournis avec Ingres II.

Installation

Pour pouvoir utiliser ces fonctions, vous devez compiler PHP avec le support Ingres, en utilisant l'option --with-ingres[=DIR] où DIR est le répertoire d'installation du serveur Ingres (par défaut, /II/ingres). Ceci nécessite les fichiers de bibliothèque de l'en-tête d'Open API qui sont inclus dans Ingres II. Si la variable d'environnement II_SYSTEM n'est pas correctement initialisée, vous devrez utiliser --with-ingres=DIR, pour spécifier le répertoire où a été installé Ingres.

Lorsque cette extension est utilisée avec Apache, si Apache ne démarre pas et émet l'erreur "PHP Fatal error: Unable to start ingres_ii module in Unknown on line 0", assurez-vous que la variable d'environnement II_SYSTEM est correctement initialisée. Il suffit souvent d'ajouter "export II_SYSTEM="/home/ingres/II" dans le script qui démarre Apache, juste avant le lancement de httpd.

Configuration à l'exécution

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

Tableau 1. Options de configuration

NomPar défautModifiable
ingres.allow_persistent"1"PHP_INI_SYSTEM
ingres.max_persistent"-1"PHP_INI_SYSTEM
ingres.max_links"-1"PHP_INI_SYSTEM
ingres.default_databaseNULLPHP_INI_ALL
ingres.default_userNULLPHP_INI_ALL
ingres.default_passwordNULLPHP_INI_ALL
Pour plus de détails sur les constantes PHP_INI_*, reportez-vous à ini_set().

Types de ressources

Cette extension ne définit aucune ressource.

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

INGRES_ASSOC (entier)

INGRES_NUM (entier)

INGRES_BOTH (entier)

Table des matières
ingres_autocommit -- Active ou désactive le mode autocommit
ingres_close -- Ferme une connexion à un serveur Ingres
ingres_commit -- Valide une transaction
ingres_connect -- Ouvre une connexion à un serveur Ingres
ingres_fetch_array --  Récupère une ligne de résultat Ingres dans un tableau
ingres_fetch_object -- Récupère une ligne de résultat dans un objet
ingres_fetch_row --  Récupère une ligne de résultat dans un tableau énuméré
ingres_field_length -- Retourne la taille d'un champ
ingres_field_name --  Retourne le nom d'un champ dans le résultat d'une requête
ingres_field_nullable -- Teste si un champ est annulable
ingres_field_precision -- Retourne la précision d'un champ
ingres_field_scale -- Retourne l'échelle d'un champ
ingres_field_type --  Retourne le type d'un champ dans le résultat d'une requête
ingres_num_fields --  Retourne le nombre de champs renvoyés par la dernière requête
ingres_num_rows --  Retourne le nombre de lignes affectées ou renvoyées par la dernière requête
ingres_pconnect --  Ouvre une connexion persistante à un serveur Ingres
ingres_query -- Envoie une requête SQL à un serveur Ingres II
ingres_rollback -- Annule une transaction