Re: get last oid
От | Ropel |
---|---|
Тема | Re: get last oid |
Дата | |
Msg-id | 029501c3c629$d8a09ff0$0100a8c0@ropelxp обсуждение исходный текст |
Ответ на | get last oid ("Ricky" <ricky@babonmultimedia.com>) |
Список | pgsql-odbc |
Yes of course, but doing so you have the same old problem: which serial did you get ?? ----- Original Message ----- From: "Shachar Shemesh" <psql@shemesh.biz> To: "Ropel" <ropel@ropel.it> Cc: "postgre" <pgsql-odbc@postgresql.org> Sent: Friday, December 19, 2003 12:38 PM Subject: Re: [ODBC] get last oid > 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/ > > >
В списке pgsql-odbc по дате отправления: