Este es mi pequeño aporte (php5-mysql5)
stored procedure de ejemplo (Recomiendo utilizar mysql query browser)
DELIMITER $$
DROP PROCEDURE IF EXISTS `prueba`.`SP_tb_Pger_AM`$$
CREATE PROCEDURE `SP_tb_Pger_AM`(in accion varchar(1),
in nroBBC int,
in fraccion int,
in nroSerie float)
BEGIN
IF accion = 'A' THEN
INSERT INTO prueba.prueba(nroBB,fraccion,nroSerie) VALUES (nroBBC,fraccion,nroSerie);
END IF;
IF accion = 'M' THEN
UPDATE prueba.PRUEBA SET roBB=roBB,fraccion=fraccion, nroSerie = nroSerie WHERE idReg= idReg ;
END IF;
END$$
DELIMITER ;
archivo de coneccion:(El que todos conocemos).
<?php
function Conectarse()
{
if (!($link=mysql_connect("localhost","root","pass")) )
{
echo "Error conectando a la Base de datos.";
exit();
}
if (!mysql_select_db("prueba",$link))
{
echo "Error seleccionando la base de datos.";
exit();
}
return $link;
}
?>
y Luego lo llamamos asi desde PHP:
(doy por hecho que hay un form que toma los datos y hace accion al siguiente archivo)
include ("coneccion.phtml");
$link=conectarse();
$fraccion = $_POST['fraccion'];
$nroBB= $_POST['nroBB'];
$nroSerie = $_POST['nroSerie'];
mysql_query("call V100_SP_tb_pger_AM('A',$fraccion,$nroBB,$nroSerie) ",$link)
or die(mysql_error());
echo mysql_error($link);
Que lo disfruten...
En lo que tengo inconvenientes es cuando llamo a un Stored procedure que realiza solo un listar (select *..) que no lleva parametros y debe devolver los registro me aparece el siguiente error:
PROCEDURE prueba.V100_SP_tb_prueba_listar can't return a result set in the given context
En cuanto lo solucione lo posteo, y si alguien sabe que me ahorre el tranco.
saludos