From: | Alban Hertroys <haramrae(at)gmail(dot)com> |
---|---|
To: | Siva Palanisamy <siva_p(at)hcl(dot)com> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to lock and unlock table in postgresql |
Date: | 2011-11-17 07:49:41 |
Message-ID: | 395A6E50-370E-4403-B2A0-DED12796A317@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 17 Nov 2011, at 7:10, Siva Palanisamy wrote:
> If there is a better solution, kindly let me know.
>
> CREATE OR REPLACE FUNCTION Fun()
> RETURNS VOID AS '
> DECLARE
> Id INTEGER;
> BEGIN
> INSERT INTO table1 VALUES (DEFAULT, ''Sample'', DEFAULT);
> SELECT MAX(id) INTO Id FROM table1;
> INSERT INTO table2 VALUES(DEFAULT,Id,''sampledata'');
> END;
> ' LANGUAGE 'plpgsql';
>
> Regards,
> Siva.
As John says, you're re-inventing the wheel that sequences solve. You could also get the id using INSERT .. RETURNING.
You have another problem on your hands though. You have a naming conflict between your variable name and a column name in that second query: id and Id are the same.
Alban Hertroys
--
Screwing up is an excellent way to attach something to the ceiling.
From | Date | Subject | |
---|---|---|---|
Next Message | Raghavendra | 2011-11-17 07:59:54 | Re: Foreign Tables |
Previous Message | John R Pierce | 2011-11-17 07:20:05 | Re: How to lock and unlock table in postgresql |