Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/07/2006, 07:09
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Quisiera saber como aplicar store procedures utilizando PHP, a qué funciones debo de llamar, para hacer la comunicación con la base de datos. Con respecto a store procedures si tengo conocimiento pero no sé como aplicarlo desde php, la conexión que hago es a ORACLE.
Pero tu ya sabes conectarte a Oracle desde PHP en general y tienes instalada la extensión correspondiente?:

www.php.net/oracle

Una vez instalada la extensión correspondiente .. Un ejemplo para llamar a tus procedimientos almacenados:
http://www.programacion.com/blogs/60...cle_y_php.html

Cita:
Una pregunta más... a partir de qué versión de mysql ya se aceptan store procedures?? si es alguna versión lo acepta, y como sería el procedimiento para ejecutar store procedures a mysql desde php.
Los Store Procedure para Mysql están disponibles desde Mysql versión 5.0.3 en adelante:
http://www.devshed.com/c/a/MySQL/A-D...ures-in-MySQL/


Algunos detalles o funcionalidades nuevas sobre "Store procedure" están disponibles desde versiones superiores a la mencionada .. lee la documentación oficial para más detalles.

Por cierto .. también puedes disfrutar de "triggers" desde Mysql 5.0.10 en adelante. Algo de información al respecto:
http://www.mysql-hispano.org/page.php?id=36&pag=3

Para poder ejecutar Store Procedure (y Triggers u otras funcionalidades de Mysql 5.x en adealnte) es necesario que uses el nuevo "cliente" (extensiones) de PHP para Msyql, me refiero a:

mysqli_xxxx() funciones:
www.php.net/mysqli


También sería recomendable usar alguna capa de abastracción de BBDD como por ejemplo:

ADOdb
http://adodb.sourceforge.net/

Así podrías "intercambiar" entre Oracle y Mysql sin muchos cambios en tu código (lo mínimo a nivel SQL sólo ...).

Según este pequeño comentario/artículo ... "dice" que usando ADOdb no es neceario instalar mysqli (extensión) para llamar a un procedimiento almacenado:

http://razoduke12.blogspot.com/2006/...rocedures.html

Haz tus pruebas y nos comentas ...

En general .. los "store procedure" de cualquier RDBMS para llamarlos desde PHP se hace con SQL própio del motor de BBDD que uses y lanzado la "ejecución" de ese SQL por la función que ejecute SQL: mysqli_query() .. para Mysql o equivalente para otros RDBMS ... Para obtener su resultado .. lo mismo que haces para obtener otro resultado de una consulta SQL simple ejecutada: xxx_fetch_xxx() funciones o equivalentes.

Un saludo,

PD: .. si usas google veras cientos de comentarios al respecto .. tanto para PHP+Oracle y Store procedure como para PHP+Mysql sobre este tema.
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.