From: | "Graham Vickrage" <graham(at)digitalplanit(dot)com> |
---|---|
To: | <pgsql-sql(at)postgresql(dot)org> |
Subject: | RE: sequences in functions |
Date: | 2000-08-18 17:28:34 |
Message-ID: | NDBBJABDILOPAOOMFJHOCEPPCDAA.graham@digitalplanit.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
I have noticed that you can only pass 16 parameters to a function, I was
therefore wondering how you can do atomic inserts (such as the function
below but with more params) using pl/pgsql if you can't pass complex data
types. Is this something that transactions are not used for or is it best
done as two seperate calls in my perl scripts?
-----Original Message-----
From: pgsql-sql-owner(at)hub(dot)org [mailto:pgsql-sql-owner(at)hub(dot)org]On Behalf
Of Yury Don
Sent: 18 August 2000 15:07
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: [SQL] sequences in functions
Hello Graham,
Friday, August 18, 2000, 6:24:15 PM, you wrote:
GV> I am having problems referencing sequeces in a function, I think because
of
GV> the '' characters. The function I am creating is a follows: -
GV> CREATE FUNCTION InsertClient ( varchar, varchar, varchar, varchar,
varchar,
GV> varchar ) RETURNS int4 AS '
GV> DECLARE
GV> id INT;
GV> BEGIN
GV> SELECT nextval('client_seq') INTO id;
GV> INSERT INTO client (client_id, last_name, address1, country)
GV> VALUES (id, $1, $2, $3);
GV> INSERT INTO client_card (client_card_id, type, number,
expiry_date,
GV> client_id)
GV> VALUES (nextval('client_card_seq'), $4, $5, $6, id);
GV> RETURN id;
GV> END;
GV> ' LANGUAGE 'plpgsql';
GV> And the error message is
GV> ERROR: parser: parse error at or near "client_seq"
GV> EOF
GV> Is this because of the ' ' ???
You must to use two quotes:
SELECT nextval(''client_seq'') INTO id;
--
Best regards,
Yury mailto:yura(at)vpcit(dot)ru
From | Date | Subject | |
---|---|---|---|
Next Message | Adam Lang | 2000-08-18 18:24:35 | Creating sequences |
Previous Message | Stephan Szabo | 2000-08-18 15:21:45 | Re: update rule loops |