On Thursday October 28 2004 11:42, Robby Russell wrote:
> Thanks, this seems to work well. My goal is to actually create a php
> function that takes a result and returns the insert_id like
> mysql_insert_id() does, but without needing to know the sequence names
> and such. I would make a psql function, but I don't always have that
> option with some clients existing systems.
An alternative is to simply select nextval() from a separately-created
sequence object to get the serial value, then insert with that value. No
need to have a serial column then, but you do need to explicitly create the
sequence object, as opposed to SERIAL.
But I didn't understand why you care to get rid of the explicit reference to
the sequence object in your code in the first place. In PostgreSQL, at
least for the past 5 years if not longer, if you create a SERIAL column for
(schemaname, tablename, columnname), then your sequence will *always* be
"schemaname.tablename_columnname_seq". If that naming convention changes,
there will be a whole lotta breakage world-wide.
In response to
pgsql-general by date
|Next:||From: Robby Russell||Date: 2004-10-28 23:07:36|
|Subject: Re: determine sequence name for a serial|
|Previous:||From: Jim C. Nasby||Date: 2004-10-28 22:47:10|
|Subject: Re: Reasoning behind process instead of thread based|