Gestion des données

Connexion à une base de données Actian X (Ingres) depuis PHP via JDBC

Actian Corporation

8 mars 2019

x avec lumière derrière pour actian x

Nous avons documenté la meilleure façon de se connecter depuis PHP à une base de données Ingres via ODBC dans un article de la base de connaissances d'Actian intitulé Ingres ODBC with PHP et dans un article précédent, Connecting to Actian X (Ingres) with PHP and NGINX. Parfois, cependant, en raison de limitations, les utilisateurs peuvent avoir besoin d'utiliser JDBC au lieu d'ODBC pour se connecter. Ce billet montre comment cela peut être fait, bien qu'il n'existe pas de support natif pour se connecter à travers JDBC en utilisant PHP.

Dans cette situation, un pont PHP-JDBC est nécessaire. Pour cet exemple, nous utilisons le pont disponible à PHP-JDBC Bridge.

Valider la connectivité JDBC

Cela suppose qu'une connexion JDBC puisse être établie. Si vous pouvez exécuter des requêtes à partir d'un petit programme Java de test utilisant JDBC, vous pouvez passer à l'étape suivante.

Configuration et démarrage du service Bridge

Consultez la documentation de PHP_JDBC (disponible sur PHP-JDBC Bridge) pour savoir comment installer les outils nécessaires et lancer le service. Un exemple de fonctionnement est le suivant :

java -cp "lib/pjbridge.jar:lib/commons-daemon-1.1.0.jar:$II_SYSTEM/ingres/lib/:$II_SYSTEM/ingres/lib/iijdbc.jar"
Serveur com.ingres.jdbc.IngresDriver 4444 &

Exemple de code PHP

Voici un exemple de code PHP permettant de se connecter à la base de données Ingres :

<?php
   require "PJBridge.php"; 

   $dbHost = "localhost";
   $dbName = "testdb";
   $dbPort = "II7";
   $dbUser = "test_user";
   $dbPass = "test_password"; 

   $connStr = "jdbc:ingres://${dbHost}:${dbPort}/${dbName}"; 

   $db = new PJBridge();
   $result = $db->connect($connStr, $dbUser, $dbPass);
   if(!$result){
      die("Failed to connect");
   } 

   $cursor = $db->exec("SELECT * FROM test_table"); 

   while($row = $db->fetch_array($cursor)){
      print_r($row);
   } 

   $db->free_result($cursor);

Pour de plus amples renseignements ou pour organiser une démonstration, veuillez communiquer avec les Services professionnels à l'adresse services@actian.com. Vous pouvez en savoir plus sur Actian X ici et visiter nos forums communautaires Actian X ici.

logo avatar actian

À propos d'Actian Corporation

Actian donne aux entreprises les moyens de gérer et de gouverner en toute confiance les données à l'échelle. Les solutions d'intelligence des données d'Actian aident à rationaliser les environnements de données complexes et à accélérer la fourniture de données prêtes pour l'IA. Conçues pour être flexibles, les solutions d'Actian s'intègrent de manière transparente et fonctionnent de manière fiable dans les environnements sur site, cloud et hybrides. Pour en savoir plus sur Actian, la division données de HCLSoftware, rendez-vous sur actian.com.