Re: function and passing the table name to be used with SQL stmnt

From: kamiseq <kamiseq(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: function and passing the table name to be used with SQL stmnt
Date: 2007-10-29 21:23:23
Message-ID: 1193693003.126162.324220@z9g2000hsf.googlegroups.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

some other question I dont like to make a new topic so I will add it
here.

I ve modified my function to
CREATE OR REPLACE FUNCTION bookid(_tabela varchar) RETURNS integer AS $
$
DECLARE
_id integer := 0;
BEGIN
--insert bez id wyzwala nextwal na tabela_columna_seq
EXECUTE 'insert into '|| quote_ident(_tabela) || '(idjm, waga,
stawka_vat) values(0, 0, '''')';
select into _id lastval();

RETURN _id;
END;
$$ LANGUAGE plpgsql;

and is that safe operation, can I rely on lastval() that it will
return value of id that was inserted before?
can it happened that other user will insert something between my
insert and select?

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Josh Trutwin 2007-10-29 21:23:46 ALTER TRIGGER Before / After?
Previous Message Tom Lane 2007-10-29 21:12:05 Re: DST problem on pg 8.2.5