Обсуждение: Getting last used oid
To All, How can I call up the last oid used in an insert statement? I've checked the docs (but not the source - getting a little big :-) by way of the TOC's and didn't see it. I'm assuming/hoping there is a function similar to lastval, curval, nextval for sequences available to do this that I would like to use in a trigger to populate another table. I also did a perusal of the new book, which looks *_really_* good so far, but it didn't have what I was hoping to find. I can do it normally of course (select oid, 'last_inserted_unique_field') from table;) but i would like a more behind the scenes way. Thank you all, John C. ___________________________________________________________________ Why pay more to get Web access? Try Juno for FREE -- then it's just $9.95/month if you act NOW! Get your free software today: http://dl.www.juno.com/dynoget/tagj.
On Tue, 7 Dec 1999, John C Cusick wrote: > How can I call up the last oid used in an insert statement? I've checked If you are writing in C, you can use the PQoidStatus() function. Similar functions are provided in other language wrappers as well (e.g., Perl). A way to do this in psql is going to be in the next release. -- Peter Eisentraut Sernanders vaeg 10:115 peter_e@gmx.net 75262 Uppsala http://yi.org/peter-e/ Sweden
> To All, > > How can I call up the last oid used in an insert statement? I've checked > the docs (but not the source - getting a little big :-) by way of the > TOC's and didn't see it. I'm assuming/hoping there is a function > similar to lastval, curval, nextval for sequences available to > do this that I would like to use in a trigger to populate another table. > > I also did a perusal of the new book, which looks *_really_* good so far, > but it didn't have what I was hoping to find. > > I can do it normally of course (select oid, 'last_inserted_unique_field') > from table;) but > i would like a more behind the scenes way. 6.6 or 7.0 will have a :LastOid variable in psql. From libpq in C, there are functions to access it. -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania19026
Hi John, There is diffrent ways to get last used oid. Perl DBD::Pg has $oid = $stmt->{pg_oid_status}, where $stmt is a last statement related with a insert command. Vladimir On Tue, 7 Dec 1999, John C Cusick wrote: > To All, > > How can I call up the last oid used in an insert statement? I've checked > the docs (but not the source - getting a little big :-) by way of the > TOC's and didn't see it. I'm assuming/hoping there is a function > similar to lastval, curval, nextval for sequences available to > do this that I would like to use in a trigger to populate another table. > > I also did a perusal of the new book, which looks *_really_* good so far, > but it didn't have what I was hoping to find. > > I can do it normally of course (select oid, 'last_inserted_unique_field') > from table;) but > i would like a more behind the scenes way. > > Thank you all, > > John C. > > ___________________________________________________________________ > Why pay more to get Web access? > Try Juno for FREE -- then it's just $9.95/month if you act NOW! > Get your free software today: http://dl.www.juno.com/dynoget/tagj. > > ************ > >