Salutation, excusez moi tout d'abord de ne pas avoir trouver un titre explicite à mon problème.

J' essaye de créer une fonction , plutot que de vous l expliquer regarder le code suivant

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
/* Returns all Cities ans LocID of a Country */
 
 
/*CREATE TYPE getTownValues AS (locid INTEGER, city VARCHAR);*/
CREATE OR REPLACE FUNCTION getAllTown(VARCHAR) 
RETURNS SETOF record AS $$
DECLARE	
          sql_result record;
 
BEGIN
	FOR sql_result in SELECT "Loc_ID", "City" FROM "Location" WHERE "Country" = $1  ORDER BY "City"
	LOOP
		RETURN NEXT sql_result;
	END LOOP;
END;
$$ LANGUAGE 'plpgsql';
 
/*test the function ...*/
 
SELECT getAllTown ("FR");
Le problème est que cette fonction ( que j exécute à la toute dernière ligne) me renvois l erreur suivante :

ERREUR: la colonne « FR » n'existe pas
LINE 20: SELECT getAllTown ("FR");
^


********** Erreur **********

ERREUR: la colonne « FR » n'existe pas
État SQL :42703
Caractère : 457
Hors FR devrait pas être vu comme une colonne mais comme la valeur que je cherche dans la colonne Country.

Si quelqu un peu m aider à comprendre ce problème qui m est pour l instant incompréhensible ...
Merci à vous