Re: oid's in views.

From: "Josh Berkus" <josh(at)agliodbs(dot)com>
To: "Aasmund Midttun Godal" <postgresql(at)envisity(dot)com>, joel(at)joelburton(dot)com
Cc: josh(at)agliodbs(dot)com, pgsql-sql(at)postgresql(dot)org
Subject: Re: oid's in views.
Date: 2001-10-22 17:33:00
Message-ID: web-400014@davinci.ethosmedia.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Aasmund,

Thank you for the clarification. Now that I know what you are doing, I
went through exactly the same thing about a year ago ... which is how we
discovered some additional problems with using OIDs in database design.
I was trying to spare you the same dead end.

> > If your problem is that you want to update VIEWs and aren't sure
> what the
> > PK for the view is, could you follow a standard like this:
> >
> > CREATE TABLE person (social_security CHAR(9), full_name TEXT);
> >
> > CREATE VIEW pers_view AS select social_security AS primkey,
> > social_security,
> > full_name);
> >
> > and know that you can always find the "primkey" field in the view
> as one
> > to use in where clauses for updates?

This is more-or-less a correct approach. As it does not address the
issue of different data types, let me tell you what I did:

Each significant data table contains one column, the first column,
called "usq", for "universal sequence". This usq field may or may not
be the primary key for the table, but does have a unique index. The usq
is populated by a single sequence "universal_sq" which is shared between
tables, thus allowing all tables usq uniqueness between them.

This strategy has allowed me to write a number of functions which are
table-agnostic, needing only the usq to do their job (such as a function
that creates modification hisotry).

-Josh Berkus

______AGLIO DATABASE SOLUTIONS___________________________
Josh Berkus
Complete information technology josh(at)agliodbs(dot)com
and data management solutions (415) 565-7293
for law firms, small businesses fax 621-2533
and non-profit organizations. San Francisco

Attachment Content-Type Size
unknown_filename text/plain 2 bytes
unknown_filename text/plain 2 bytes
unknown_filename text/plain 2 bytes

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Joel Burton 2001-10-22 19:54:28 Re: oid's in views.
Previous Message Masaru Sugawara 2001-10-22 15:19:00 Re: Identifying obsolete values