Is there a reason why no table OID in pg_tables

Started by Richard Huxtonabout 22 years ago3 messages
#1Richard Huxton
dev@archonet.com

I was just trying to compare constraints in two versions of a database and the
obvious (to me) join from pg_constraint to pg_tables wasn't possible.

Not a real problem, I just used pg_class, but is the lack of oid in pg_tables
a design decision and if so why?

--
Richard Huxton
Archonet Ltd

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Richard Huxton (#1)
Re: Is there a reason why no table OID in pg_tables

Richard Huxton <dev@archonet.com> writes:

Not a real problem, I just used pg_class, but is the lack of oid in pg_tables
a design decision and if so why?

Views don't have OIDs (or any other system columns). We could export
pg_class.oid as an ordinary column in pg_tables, but then it would be
in your face whether you wanted it or not.

regards, tom lane

#3Richard Huxton
dev@archonet.com
In reply to: Tom Lane (#2)
Re: Is there a reason why no table OID in pg_tables

On Saturday 18 October 2003 16:32, Tom Lane wrote:

Richard Huxton <dev@archonet.com> writes:

Not a real problem, I just used pg_class, but is the lack of oid in
pg_tables a design decision and if so why?

Views don't have OIDs (or any other system columns).

And if they did, it wouldn't be what we wanted anyway.

We could export
pg_class.oid as an ordinary column in pg_tables, but then it would be
in your face whether you wanted it or not.

Fair enough - it just seemed odd that a FK in pg_constraint would refer to an
oid that wasn't available "at the same level of abstraction" if you see what
I mean.

--
Richard Huxton
Archonet Ltd