Unable to run one pl/pgSQL function :-(

Started by Bruno Baguettealmost 24 years ago2 messagesgeneral
Jump to latest
#1Bruno Baguette
bruno.baguette@netcourrier.com

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

#2Stephan Szabo
sszabo@megazone23.bigpanda.com
In reply to: Bruno Baguette (#1)
Re: Unable to run one pl/pgSQL function :-(

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"'') )