Bonjour,
Je cherche a obtenir le résultat d'une fonction dans un bloc d'appel dynamique, mais je ne sais pas si cela est faisable.
Exemple:
Le fonction test2() fait un appel a la fonction test(). Je voudrais récupérer dans test2() la valeur retournée dans test().
Le code actuel m'indique que select into dans la commande execute n'est pas encore implémenté.
Est-il possible de faire ce genre d'opératiion?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 -- DROP FUNCTION technical.test(); CREATE OR REPLACE FUNCTION technical.test() RETURNS text AS $BODY$DECLARE BEGIN RETURN 'test'; END;$BODY$ LANGUAGE 'plpgsql' VOLATILE; --DROP FUNCTION technical.test2(); CREATE OR REPLACE FUNCTION technical.test2() RETURNS text AS $BODY$DECLARE retour text; name text; BEGIN name:='technical.test()'; EXECUTE 'select * INTO retour FROM '||name; RETURN retour; END;$BODY$ LANGUAGE 'plpgsql' VOLATILE; select * FROM technical.test2();
Et si oui, comment?
Merci de votre aide,
Sébastien
Partager