» »

POMOČ-kako narediti execute proceduralne funkcije kreirane v phpmyadminu v PHP-ju?

POMOČ-kako narediti execute proceduralne funkcije kreirane v phpmyadminu v PHP-ju?

gas987123 ::

Pozdravljeni! Rad bi naredil formo te funkcije spodaj v PHPju. Težavo mi povzroča, ker nevem kako bi v phpju naredil setterje (SET) za sifro_delavca, zacetni_datum in koncni_datum, ki jih nujno potrebujem za izračun norme. V phpmyadminu mi execute naredi brez problema.



CREATE DEFINER=`root`@`localhost` FUNCTION `izracun_norme`(`sifra_delavca` INT, `zacetni_datum` DATE, `koncni_datum` DATE) RETURNS float
READS SQL DATA
DETERMINISTIC
BEGIN

declare vdatum_realizacije date;
declare voperacija integer;
declare vstevilo_operacij integer;
declare vminut_dela integer;
declare vmin_kos decimal(5,3);
declare vnorma float;
declare vskupno_minut float;
declare vkonec integer default 0;
declare a float;
declare cur_vrstica cursor for
select datum_realizacije, id_operacija, stevilo_operacij, minut_dela
from vrstica_obracuna where id_delavec=sifra_delavca and datum_realizacije between zacetni_datum and koncni_datum;
declare continue handler for not found set vkonec = 1;
select sum(minut_dela) INTO vskupno_minut from vrstica_obracuna where id_delavec=sifra_delavca and datum_realizacije between zacetni_datum and koncni_datum;
if vskupno_minut = NULL then
set vnorma = 0.0;
else
set vnorma = 0;
open cur_vrstica;
dobi_podatke : LOOP
FETCH cur_vrstica INTO vdatum_realizacije, voperacija, vstevilo_operacij, vminut_dela;
SELECT minut_za_kos INTO vmin_kos FROM operacija WHERE id_operacija=voperacija;
-- set a = (vminut_dela/vskupno_minut);
set vnorma=vnorma + (vminut_dela/vskupno_minut)*(100.0*vstevilo_operacij/(vminut_dela/vmin_kos));
-- set vnorma = vmin_kos;--
IF vkonec = 1 then
leave dobi_podatke;
end if;
end loop dobi_podatke;
end if;
close cur_vrstica;
return vnorma;
end

carota ::

Use the PDO, Luke. ;) (Googlaj "PDO", prvi zadetek)

Mimogrede, zdi se mi, da s kurzorjem rešuješ nekaj, kar bi se dalo po vsej verjetnosti brez.

Zgodovina sprememb…

  • spremenil: carota ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

float vs decimal

Oddelek: Programiranje
365952 (4085) Looooooka
»

SQL trigger Oracle

Oddelek: Programiranje
51108 (1016) PunXXX
»

sql-t stored procedure

Oddelek: Programiranje
10995 (862) detroit
»

[sql]-stevilka vrstic

Oddelek: Programiranje
121018 (881) bmandl
»

SQL vprašanje

Oddelek: Izdelava spletišč
302549 (2112) jerneju

Več podobnih tem