Обсуждение: Unable to run one pl/pgSQL function :-(
Hello,
I've written a little pl/pgSQL function in order to use it on a little
postgreSQL database :
CREATE function tuple_add(VARCHAR(200)) RETURNS text AS
'
DECLARE
Response text;
PeopleName ALIAS FOR $1;
BEGIN
INSERT INTO PEOPLES VALUES (SEQUENCE_Id.NEXTVAL(),PeopleName);
return Response;
END;
' LANGUAGE 'plpgsql';
When I add this function to my database, I don't receive any error
message.
But I don't success to use this function. I've tried like that :
mabd=> SELECT tuple_add('One try');
ERROR: parser: parse error at or near "("
mabd=> SELECT tuple_add("One try");
ERROR: Attribute 'One try' not found
The PEOPLE database just contains two columns : an INTEGER and one
VARCHAR(200). And the SEQUENCE_Id sequence I use is existing. I've also
checked that pl/pgSQL has been activated to my database.
The Response variable is to be used to get the eventual exception, but I
have to find how I can do that.
Can you explain me how can I use my pl/pgSQL function ?
Thanks in advance ! :-)
-------------------------------------------------
Bruno BAGUETTE - bruno.baguette@netcourrier.com
On Fri, 21 Jun 2002, Bruno Baguette wrote:
> Hello,
>
> I've written a little pl/pgSQL function in order to use it on a little
> postgreSQL database :
>
> CREATE function tuple_add(VARCHAR(200)) RETURNS text AS
> '
> DECLARE
> Response text;
> PeopleName ALIAS FOR $1;
> BEGIN
> INSERT INTO PEOPLES VALUES (SEQUENCE_Id.NEXTVAL(),PeopleName);
I'd suggest:
nextval(''sequence_id'') (or if SEQUENCE_Id was made with double
quotes, nextval(''"sequence_id"'') )