Tous les exemples dans la documentation PHP de MaxDB utilise la base de données de démonstration HETOLDB depuis MaxDB. Plus d'informations concernant cette base de données peuvent être trouvées sur » http://maxdb.sap.com/doc/7_7/44/d8c25164bb38d0e10000000a1553f7/content.htm.
Pour utiliser les exemples dans la documentation PHP MaxDB, vous devez télécharger les données du tutorial dans votre base de données. Ensuite, vous devez définir maxdb.default_db dans votre php.ini à la valeur de votre base de données contenant les données du tutorial.
Cet exemple simple montre comment se connecter, exécuter une requête, afficher les lignes résultants et se déconnecter de la base de données MaxDB.
Exemple #1 Exemple global de l'extension MaxDB
<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (maxdb_connect_errno()) {
printf("Échec de la connexion : %s\n", maxdb_connect_error());
exit();
}
/* Exécution de la requête SQL */
$query = "SELECT * FROM hotel.city";
$result = maxdb_query($link, $query) or die("Échec de la requête : " . maxdb_error());
/* Affichage des resultats en HTML */
echo "<table>\n";
while ($line = maxdb_fetch_array($result, MAXDB_ASSOC)) {
echo " <tr>\n";
foreach ($line as $col_value) {
echo " <td>$col_value</td>\n";
}
echo " </tr>\n";
}
echo "</table>\n";
/* Libération du résultat */
maxdb_free_result($result);
/* Fermeture de la connexion */
maxdb_close($link);
?>
L'exemple suivant montre comment l'on lie des variables à des requêtes SELECT INTO.
Exemple #2 Exemple d'utilisation des requêtes SELECT INTO
<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (!$link) {
printf("Échec de la connexion : %s\n", maxdb_connect_error());
exit();
}
/* Exécution de la requête SQL */
$stmt = maxdb_prepare ($link, "SELECT percentage INTO ? FROM hotel.countrylanguage where language = ?");
if (!$stmt) {
printf ("Échec de la préparation : %s\n", maxdb_error($link));
}
$name = "Mbundu";
maxdb_stmt_bind_param($stmt, 'ds', $percentage, $name);
maxdb_stmt_execute($stmt);
printf ("%f\n", $percentage);
maxdb_stmt_close ($stmt);
?>
L'exemple suivant montre comment utiliser les procédures avec les bases de données MaxDB.
Exemple #3 Exemple d'utilisation des procédures
<?php
$link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");
/* Vérification de la connexion */
if (!$link) {
printf("Échec de la connexion : %s\n", maxdb_connect_error());
exit();
}
maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($link,"DROP DBPROC test_proc");
maxdb_report (MAXDB_REPORT_ERROR);
$query = "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;";
maxdb_query($link, $query);
/* Exécution de la requête SQL */
$stmt = maxdb_prepare ($link, "CALL test_proc (?)");
if (!$stmt) {
printf ("Échec de la préparation : %s\n", maxdb_error($link));
}
maxdb_stmt_bind_param($stmt, 's', $result);
maxdb_stmt_execute($stmt);
printf ("%s\n", $result);
maxdb_stmt_close ($stmt);
?>