[DEBUTANT]

Bonjour;
on voulais créer un fonction qui retourne un certain nombre d'enregistrement
on a pris l example ci dessous dans Documentation PostgreSQL dans le chapitre Fonctions en langage de requêtes (SQL)

// CREATION TABLE
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
CREATE TABLE foo (fooid int, foosousid int, foonom text);
INSERT INTO foo VALUES (1, 1, 'Joe');
INSERT INTO foo VALUES (1, 2, 'Ed');
INSERT INTO foo VALUES (2, 1, 'Mary');
//CREATION FONCTION
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
CREATE FUNCTION recupfoo(int) RETURNS SETOF foo AS '
    SELECT * FROM foo WHERE fooid = $1;
' LANGUAGE SQL;
// APPEL DE FONCTION
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
SELECT * FROM recupfoo(1) AS t1;
Malheuresement quand on appel le fonction on obtient toujour le message d'erreur suivant:

[ERREUR]
Erreur SQL :
ERROR: parser: parse error at or near "("

In statement:
SELECT * FROM recupfoo(1) AS t1;

[/ERREUR]


comment peut on y remedier?

Merci beaucoup!



PostgreSQL 7.2.2 lancé sur linux
SQL Manager 2005 lite
win Xp pro Sp2