Uso básico

Todos lo ejemplos de la documentación de PHP de MaxDB usan la base de datos de demostración HOTELDB de MaxDB. Se puede encontrar más sobre esta base de datos en » http://maxdb.sap.com/doc/7_7/44/d8c25164bb38d0e10000000a1553f7/content.htm.

Para utilizar los ejemplos en la documentación de PHP de MaxDB debe tener cargado la información del tutorial en su base de datos. Después tiene que setablecer maxdb.default_db en php.ini a la base de datos que contiene la información del tutorial.

Este sencillo ejemplo muestra cómo conectarse, ejecutar una consulta e imprimir las filas resultantes de una base de datos MaxDB.

Ejemplo #1 MaxDB extension overview example

<?php
$enlace 
maxdb_connect("localhost""MONA""RED""DEMODB");
   
/* verificar la conexión */
if (maxdb_connect_errno()) {
   
printf("Falló la conexión: %s\n"maxdb_connect_error());
   exit();
}

/* Realizar una consulta SQL */
$consulta "SELECT * FROM hotel.city";
$resultado maxdb_query($enlace$consulta) or die("Falló la consulta : " maxdb_error());

/* Imprimir los resultados en HTML */
echo "<table>\n";
while (
$línea maxdb_fetch_array($resultadoMAXDB_ASSOC)) {
    echo 
"  <tr>\n";
    foreach (
$línea as $valor_col) {
        echo 
"    <td>$valor_col</td>\n";
    }
    echo 
"  </tr>\n";
}
echo 
"</table>\n";

/* Liberar el conjunto de resultados */
maxdb_free_result($resultado);

/* Cerrar la conexión */
maxdb_close($enlace);
?>

El siguiente ejemplo muestra cómo vincular variables a una sentencia SELECT INTO.

Ejemplo #2 Ejemplo para usar sentencias SELECT INTO

<?php
$enlace 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* verificar la conexión */
if (!$enlace) {
   
printf("Falló la conexión: %s\n"maxdb_connect_error());
   exit();
}
   
/* Realizar una consulta SQL */
$sentencia maxdb_prepare ($enlace"SELECT percentage INTO ? FROM hotel.countrylanguage where language = ?");
if (!
$sentencia) {
  
printf ("Falló la preparación: %s\n"maxdb_error($enlace));
}

$nombre "Mbundu";

maxdb_stmt_bind_param($sentencia'ds'$porcentaje$nombre);
maxdb_stmt_execute($sentencia);

printf ("%f\n"$porcentaje);

maxdb_stmt_close ($sentencia);
?>

El siguiente ejemplo muestra cómo usar los procedimientos de una base de datos MaxDB.

Ejemplo #3 Ejemplo de uso de procesimientos de una base de datos

<?php
$enlace 
maxdb_connect("localhost""MONA""RED""DEMODB");

/* verificar la conexión */
if (!$enlace) {
   
printf("Falló la conexión: %s\n"maxdb_connect_error());
   exit();
}

maxdb_report (MAXDB_REPORT_OFF);
maxdb_query($enlace,"DROP DBPROC test_proc");
maxdb_report (MAXDB_REPORT_ERROR);

$consulta "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;";

maxdb_query($enlace$consulta);

/* Realizar una consulta SQL */
$sentencia maxdb_prepare ($enlace"CALL test_proc (?)");
if (!
$sentencia) {
  
printf ("Prepare failed: %s\n"maxdb_error($enlace));
}

maxdb_stmt_bind_param($sentencia's'$resultado);
maxdb_stmt_execute($sentencia);

printf ("%s\n"$resultado);

maxdb_stmt_close ($sentencia);
?>