mahni
Messages postés4Date d'inscriptionsamedi 15 juillet 2006StatutMembreDernière intervention30 novembre 2007
-
30 nov. 2007 à 06:49
cs_exar
Messages postés286Date d'inscriptionvendredi 5 décembre 2003StatutMembreDernière intervention22 avril 2012
-
6 févr. 2009 à 14:47
bonjour , est-ce que quelqu'un pourrait m'aider à retrouver l'erreur dans le code que j'ai écrit ci-dessous! svp!
create or replace package exemple_package is
TYPE tab_t_rec_prog IS TABLE OF t_magasin%rowtype;
FUNCTION MesProg (p_i NUMBER) RETURN tab_t_rec_prog;
end exemple_package;
create or replace package body exemple_package is
FUNCTION MesProg(p_i NUMBER) RETURN tab_t_rec_prog IS
cursor curs IS select * from t_magasin;
TYPE t_rec IS TABLE OF t_magasin%rowtype;
i NUMBER := 1;
BEGIN
FOR rec IN curs LOOP
t_rec(i).mag_n_id := rec.mag_n_id;
t_rec(i).mag_ch_nom := rec.mag_ch_nom;
t_rec(i).mag_d_creation := rec.mag_d_creation;
i := i+1;
END LOOP;
RETURN(t_rec(p_i));
END;
end exemple_package;
ERROR:Compilation errors for PACKAGE BODY FNAC.EXEMPLE_PACKAGE
Error: PLS-00306: numéro ou types d'arguments erronés dans appel à 'T_REC'
Line: 21
Text: t_rec(i).mag_n_id := rec.mag_n_id;
cs_exar
Messages postés286Date d'inscriptionvendredi 5 décembre 2003StatutMembreDernière intervention22 avril 20121 6 févr. 2009 à 14:47
type t_rec is t_magasin%rowtype;
FUNCTION MesProg(p_i NUMBER) RETURN t_rec is
rec t_rec;
BEGIN
with tmp_query as (select rownum num, tm.* from t_magasin)
select tm.mag_n_id, mag_ch_nom, mag_d_creation
into rec.mag_n_id, rec.mag_ch_nom, rec.d_creation
from tmp
where num = p_i;