Problème de fonction postgres
Bonjour :
J'ai un soucis avec la déclaration de l'une de mes fonctions.
La voici :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| CREATE OR REPLACE FUNCTION EPURE_NO_TEL(no_tel0 TEXT)
RETURNS TEXT AS $$
DECLARE
no_telf TEXT;
idx INTEGER ;
carac CHAR(1) ;
BEGIN
SET no_telf ='' ;
if (LENGTH(no_tel0) >0) THEN
SET idx = 1 ;
WHILE idx <= LENGTH(no_tel0) LOOP
SET carac = SUBSTRING(no_tel0, idx, 1);
IF (carac >='0' AND carac <='9' OR carac IN ('(', ')', '+')) THEN
SET no_telf = no_telf || carac ;
END IF ;
SET idx =idx +1;
END LOOP ;
END IF ;
RETURN no_telf ;
END ;
$$ LANGUAGE plpgsql; |
Ca me sort cette erreur :
Citation:
ERROR: syntax error at or near "$1" at character 6
QUERY: SET $1 =1
CONTEXT: SQL statement in PL/PgSQL function "epure_no_tel" near line 8
Je vous remercie d'avance de votre aide.
Bonne journée à tous