Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
En estos ejemplos se realiza la conexin con el usuario HR, que es el esquema de ejemplo
"Human Resources" proporcionado con la base de datos Oracle. Podra ser necesario
desbloquear la cuenta y reiniciar la contrasea antes de poder usarla.
Los ejemplos se conectan a la base de datos XE de su mquina. Cambie la cadena de
conexin a su base de datos antes de ejecutar los ejemplos.
Ejemplo #1 Consulta bsica
Este ejemplo muestra la realizacin de consultas y la visualizacin de resultados. Las
sentencias en OCI8 usan la secuencia de pasos 'preparacin-ejecucin-obtencin'.
<?php
$conexin = oci_connect('hr', 'welcome', 'localhost/XE');
if (!$conexin) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Preparar la sentencia
$stid = oci_parse($conexin, 'SELECT * FROM departments');
if (!$stid) {
$e = oci_error($conexin);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Realizar la lgica de la consulta
$r = oci_execute($stid);
if (!$r) {
$e = oci_error($stid);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Obtener los resultados de la consulta
print "<table border='1'>\n";
while ($fila = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
print "<tr>\n";
foreach ($fila as $elemento) {
print "
<td>" . ($elemento !== null ? htmlentities($elemento,
ENT_QUOTES) : "") . "</td>\n";
}
print "</tr>\n";
}
print "</table>\n";
oci_free_statement($stid);
oci_close($conexin);
?>
// ejecuta y consigna
if ($r) {
print "Una fila insertada";
}
oci_free_statement($stid);
oci_close($conexin);
?>
oci_execute($stid);
while (($row = oci_fetch_array($stid, OCI_ASSOC)) != false) {
echo $row['LAST_NAME'] ."<br>\n";
}
// La salida es
//
Austin
//
Ernst
//
Hunold
//
Lorentz
//
Pataballa
oci_free_statement($stid);
oci_close($conn);
?>
oci_execute($stid);
print '<table border="1">';
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_LOBS)) {
print '<tr><td>'.$row['MYCLOB'].'</td></tr>';
// En un bucle, liberar la variable grande antes de la 2 obtencin r
educe el uso de memoria de picos de PHP
unset($row);
}
print '</table>';
?>
// imprime 24
oci_free_statement($stid);
oci_close($conexin);
?>
en
// imprime 16
oci_free_statement($stid);
oci_close($conexin);
?>
*/