Re: 'select nextval('seq_name');' in a function ?

From: Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com>
To: Pragati Kenkare <pkenkare(at)writeme(dot)com>
Cc: pgsql-novice(at)postgresql(dot)org, pgsql-sql(at)postgresql(dot)org
Subject: Re: 'select nextval('seq_name');' in a function ?
Date: 2004-01-31 15:23:36
Message-ID: 20040131072014.L91270@megazone.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice pgsql-sql

On Sat, 24 Jan 2004, Pragati Kenkare wrote:

> I am new to postgresql. Using PostgreSQL 7.3.2, I did the following.
>
> testdb#CREATE SEQUENCE principal_id increment 1 start 1000 cache 5;
>
> testdb#CREATE TABLE principal (principal_id int not null, name text, constraint pk_principal primary key(principal_id));
>
> testdb#CREATE FUNCTION getnext_principal_id(int) returns int as 'select nextval('principal_id');' language 'SQL';

You need to double the single quotes around principal_id, and I'm not sure
which version switched to int8 sequences, and do you really want to be
passing in an unused int?

CREATE FUNCTION getnext_principal_id() returns int as 'select
CAST(nextval(''principal_id'') AS int4);' language 'SQL';

However, how are you planning to use this? Perhaps making principal_id a
serial would be better for you.

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message Stephan Szabo 2004-01-31 15:50:20 Re: Method Question
Previous Message Derrick Betts 2004-01-31 07:18:38 Re: Emailing a list of users when a record is entered in the database.

Browse pgsql-sql by date

  From Date Subject
Next Message Stephan Szabo 2004-01-31 15:26:01 Re: Mechanics of Update:Cascade
Previous Message beyaRecords - The home Urban music 2004-01-31 10:50:03 Mechanics of Update:Cascade