nextval dans une fonction plpgsql ?

From: Samuel ROZE <samuel(dot)roze(at)aliceadsl(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: nextval dans une fonction plpgsql ?
Date: 2009-09-13 13:34:16
Message-ID: 1252848856.11394.36.camel@samuel-laptop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Bonjour à tous,

Je suis en train de développer une fonction Pl/PgSQL mais je n'arrive
pas à accèder à la valeur suivante d'une séquence... Voici l'erreur:

Erreur SQL :

ERREUR: erreur de syntaxe sur ou près de « $1 »
LINE 1: ...graphiques.critere_id_couple_crite_seq'::regclass) INT0 $1
^
QUERY: SELECT nextval FROM nextval('graphiques.critere_id_couple_crite_seq'::regclass) INT0 $1
CONTEXT: SQL statement in PL/PgSQL function "addcritere" near line 7

Dans l'instruction :

CREATE OR REPLACE FUNCTION graphiques.addCritere ( v_lib_critere varchar(50) ) RETURNS void AS $$
DECLARE
v_id_couple_critere integer;
v_liste_criteres graphiques.critere%rowtype;
BEGIN

FOR v_liste_criteres IN SELECT * FROM graphiques.getCriteres() LOOP
SELECT nextval FROM nextval('graphiques.critere_id_couple_crite_seq'::regclass) INT0 v_id_couple_critere;
INSERT INTO critere (id_couple_critere, lib_critere) VALUES (v_id_couple_critere, v_lib_critere);
END LOOP;
IF v_liste_criteres IS NULL THEN
INSERT INTO critere (id_couple_critere, lib_critere) VALUES (0, v_lib_critere);
END IF;

RETURN;
END;
$$ LANGUAGE plpgsql;

Pouvez-vous m'aider ?

Merci d'avance !
Cordialement, Samuel ROZE.

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Dimitri Fontaine 2009-09-13 13:39:44 Re: nextval dans une fonction plpgsql ?
Previous Message damien clochard 2009-09-13 12:49:15 Quel avenir pour trac.postgresql.fr