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. ---------------------------(end of broadcast)--------------------------- TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]