Re: get last oid

From: Shachar Shemesh <psql(at)shemesh(dot)biz>
To: Ropel <ropel(at)ropel(dot)it>
Cc: postgre <pgsql-odbc(at)postgresql(dot)org>
Subject: Re: get last oid
Date: 2003-12-19 11:38:23
Message-ID: 3FE2E32F.5080303@shemesh.biz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Ropel wrote:

>... In a well designed relational Db, every table has a (unique) primary
>key: if so, you don't even need to
>know the oid, because the record just inserted is directly reachable using
>the PK.
>If your PK uses sequences, you have to get the next seq value "select
>nextval() from seq_xxxxx..." and use the
>value obtained for inserting your new row instead of using it as a default
>value; this way you are protected from
>concurrent writing to the DB.
>
>If you REALLY need the oid from the ODBC connection, I can't help... sorry !
>
>Bye
>
>Roberto
>
>
>
Actually, if you created the sequence implicitly by using the "serial"
type, you don't even have to do that. You can simply do this:
creating the table:
create table foo (index serial not null, a type, b type.....);
inserting into the table:
insert into foo (a,b,....)....

I.e. - leave the serial field out of the insert, and it will
automatically be set to the next sequence from the table.

--
Shachar Shemesh
Open Source integration & consulting
Home page & resume - http://www.shemesh.biz/

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Hiroshi Inoue 2003-12-19 11:52:24 Re: [patch] CodeGuard fix
Previous Message sqllist 2003-12-19 11:22:35 Re: get last oid