[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Phpgroupware-developers] get_last_insert_id broken for PostgreSQL 8
From: |
Chris Weiss |
Subject: |
Re: [Phpgroupware-developers] get_last_insert_id broken for PostgreSQL 8.x |
Date: |
Tue, 31 Jan 2006 15:11:16 -0600 |
On 1/31/06, Alan Langford <address@hidden> wrote:
> Unless you're in a SQL transaction, you run a risk of getting the wrong ID
> on a busy server unless you have a write lock on the table, which is
> usually not a good thing. If you have another unique key, you can "select
> max($field) from $table where unique_key=$keyvalue" but that's often not
> possible.
>
> MySQL has a "select last insert id" query (that I could never get to
> function), maybe Postgre has a similar query/function that works? Even then
> you need to make sure you're the only thread using the database connection
> or you could get an insert Id from some other transaction (highly unlikely
> but possible).
that's "select last_insert_id()", and the php function mentioned is an
alias to this type of command in the postgresql API.
agree'd that getting the MAX is Bad Idea, and no suprise to me, the
php manual explains the issue and solution in sufficient detail.
php.net/pg_last_oid
when in doubt, RTFM.