Re: PREPARE -> EXECUTE Problem

From: Jasen Betts <jasen(at)xnet(dot)co(dot)nz>
To: pgsql-php(at)postgresql(dot)org
Subject: Re: PREPARE -> EXECUTE Problem
Date: 2009-01-18 00:48:24
Message-ID: gktu8o$f6f$1@reversiblemaps.ath.cx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

On 2009-01-15, F. <dev001(at)pas-world(dot)com> wrote:
> >Just ignore the default.
> >Have you set up the table with SERIAL?
> >if so this should work:
>
> After some changes, for the moment seems the good choice.
> But have a problem getting pdo->lastInsertId(), do not work in postgre
> for me.
>
> I am using this :
> select currval('table_id_seq');
>

do this

select nextval('table_id_seq');

before you insert, and insert the value that gives.

this solves your other problem (use of DEFAULT) too, (or is that the
same problem)

another option is to use 'RETURNING id' when you insert

INSERT
INTO "mytable" ( "thatcolumn" )
VALUES ( 'whatever' )
RETURNING "id";

this needs PG >= 8.2

In response to

Browse pgsql-php by date

  From Date Subject
Next Message Raymond O'Donnell 2009-01-21 11:53:01 PHP 5.8 -> Postgres on Win2003
Previous Message F. 2009-01-15 11:43:30 Re: PREPARE -> EXECUTE Problem