Johnny,
> Once I get a current project to production state, I'm going to get a
> heap of users performing updates simultaneously through the same
> update.php, and that raises a few questions:
>
> 1. will pg_getlastoid() return the last oid inserted *by this user*,
> *on this page*, *on this connection*, or is there a possibility for
> them to get mixed up, because the database gets a connection from the
> same user (php), and reuses connections or something?
Use a more sophisticated scheme. I understand that the current OID
scheme is eventually being phased out of future Postgres releases (with
backwards compatibility, of course!) and replaced with something else
because of problems with very large/very old databases. Or so the rumor
mill goes.
I handle this issue by wrapping all adds and edits in functions; each
function returns the primary key of the record as its result. NEXTVAL
and CURVAL are your friends!
> 2. I find oid's pretty clever, but are they good for unique keys? It
> seems, foreign key constraints won't use oid's in the current
> release, should i use serials instead?
Yes, you should use SERIALs instead. OIDs are for system use only, and
will cause problems with backup/restore as well as databases with more
than 2 billion objects.
-Josh
______AGLIO DATABASE SOLUTIONS___________________________
Josh Berkus
Complete information technology josh@agliodbs.com
and data management solutions (415) 565-7293
for law firms, small businesses fax 621-2533
and non-profit organizations. San Francisco