Problème de création de fonction
Bonjour
je fais encore appel à votre aide pour la création d'une fonction
Ma fonction en pl/pgSQL est crée mais j'ai toujours null;
Avant de créer ma fonction j'ai suivi vos conseils de me concentrer d'abord sur ma requête qui est la suivante et elle marche :
Code:
1 2 3 4 5 6
| select f.codefilm , titrefilm , annee , duree , intgenre, nomacteur, prenomacteur
from film f
join genre ge on f.codegenre = ge.codegenre
join jouer_un_role j on f.codefilm = j.codefilm
join acteur ac on j.codeacteur = ac.codeacteur
and titrefilm = 'Rambo' |
Par la suite j'ai réussi à créer ma fonction sans avoir d'erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| create or replace function infoFilm(varchar) returns varchar
as $$
DECLARE
films record;
parametre alias for $1;
filminfo varchar;
absencefilm varchar;
Begin
for films in select f.codefilm , titrefilm, annee, duree, intgenre, nomacteur, prenomacteur
from film f
join genre ge on f.codegenre = ge.codegenre
join jouer_un_role j on f.codefilm = j.codefilm
join acteur ac on j.codeacteur = ac.codeacteur LOOP
if films.titrefilm is not null then
filminfo := films.codefilm||' '||films.titrefilm||'( '||films.annee||' '||films.duree||') \n'|| films.intgenre ||'\n'||films.nomacteur||' '||films.prenomacteur;
else
absencefilm :='Film inexistant';
End If;
END LOOP;
return filminfo;
end
$$ LANGUAGE plpgsql; |
quand j'utilise ma fonction en mettant comme argument le titre d'un film j'ai comme résultat toujours null
je me pose la question si dans ma variable filminfo je peux stocker tous ce contenu.
merci pour votre aide