Re: EXECUTE plpgsql

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Julio Leyva <jcleyva(at)hotmail(dot)com>
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: EXECUTE plpgsql
Date: 2007-08-11 16:04:58
Message-ID: 2233.1186848298@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Julio Leyva <jcleyva(at)hotmail(dot)com> writes:
> Hi allI'm trying to get the next value from a sequence using a store proced=
> ure like thiscreate or replace function givemenext() returns integer AS $$=
> DECLAREnewvalue integer;getseq varchar(256);BEGINreturn EXECUTE 'SELECT nex=
> tval(''test_id_seq'')';END;$$ language plpgsqlSo when I do select * from gi=
> vemenext()I got this error messageERROR: type "execute" does not existCONT=
> EXT: SQL statement "SELECT EXECUTE 'SELECT nextval(''test_id_seq'')'"PL/p=
> gSQL function "givemenext" line 11 at returnWhat I'm doing wrong?Thanks in =
> advance=

Please try to use a less broken mailer :-(

Anyway, that seems like the hard way. Why not just

return nextval('test_id_seq');

regards, tom lane

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Khan, Mahmood Ahram 2007-08-13 05:24:02 Audit Trail
Previous Message Julio Leyva 2007-08-11 15:34:18 EXECUTE plpgsql