[ biske86 @ 12.08.2010. 20:53 ] @
Imam proceduru koja vraća select upit (tj. resultset u php). Ta procedura ima out parametar. Da li je moguće da pozovem proceduru, da uzmem rekordset i da onda izvučem iz procedure out parametre? Može li neko da mi pomogne sa ovim?
[ biske86 @ 13.08.2010. 23:08 ] @
Ne treba da mi neko napiše skriptu koja ovo radi već mi je potrebna samo informacija da li je ovako nešto moguće. Ne znam php a radim na nekom mysql projektu pa me interesuje zbog logike aplikacije da li ovo može da radi na ovakav način.
[ agvozden @ 14.08.2010. 23:23 ] @
Sql procedure obicno imaju input i out vrednosti.

Iz skripte pozivas proceduru ili funkciju, a ona ti vraca rezulat/rezultate. Druge stvari ne mozes videti, osim ukoliko nekako strpas to u izlaz same procedure.
[ biske86 @ 20.08.2010. 17:05 ] @
Ja mogu da pročitam resultset koji mi procedura vraća.
Ili mogu da pročitam izlazni parametar koji procedura vraća.
Ali kad hoću i jedno i drugo onda mi php prijavljuje neku grešku.
Zato pitam možda ja nešto ne radim dobro. A ako ne može to bi stvarno bilo glupo.
Recimo ja pozovem proceduru koja koja ima izlazni parametar "status". Ja treba da pročitam taj status i ukoliko je on 0 (to znači da smo u sesiji) ja onda treba da prikažem resultset koji ta procedura vraća.


Evo i primera procedure

Code (sql):

DELIMITER $$

CREATE DEFINER=`user`@`localhost` PROCEDURE `SP_GET_KATEDRA`(IN p_korisnickoime VARCHAR(15), IN p_ipadresa VARCHAR(15), IN p_sifrasesije VARCHAR(50), OUT p_status INT, OUT p_poruka VARCHAR(255))
BEGIN
SET names utf8;
CALL SP_SESIJA_PROCEDURA(p_korisnickoime, p_ipadresa, p_sifrasesije, p_status, p_poruka);
SELECT naziv
FROM KATEDRA;

END
 


Znači proverim sesiju preko poziva CALL SP_SESIJA_PROCEDURA. Ova procedura proveri da li imam prava pristupa i ako imam postavi p_status=0. Ja to iz php-a pročitam i ako je p_status=0 onda pročitam resultset tj. ono što daje upit SELECT naziv FROM KATEDRA;