Let me see if I can add more information here. PSQL appears to only
retrieve table metadata when \d is given. For my interface, I will need
the ability to present every column as a proper system object (int, byte
array, currency, etc) depending on the db type. I will not be able to
wait for the user of my interface to execute a method before retrieving
this data so I will need to automatically retrieve it every time.
Having looked at the query issued by \d in PSQL, it would seem that I
would need to issue that same query for every column in my select. I
say that because it contains a join of pg_class and pg_attribute.
Am I understanding this right?
> -----Original Message-----
> From: Rod Taylor [mailto:rbt@rbt.ca]
> Sent: Friday, December 06, 2002 9:19 AM
> To: Reggie Burnett
> Cc: PostgreSQL-development
> Subject: Re: [HACKERS] new interface
>
> On Fri, 2002-12-06 at 09:55, Reggie Burnett wrote:
> > I'm working on a new interface to PostgreSQL and having a difficult
> > time. Perhaps someone here can shed some light on the subject.
> >
> > 1. Am I correct in thinking that the OID that I receive with the
> > RowDescription is the column type? I have several of those defined
from
>
> The OID is just a relatively unique database wide row marker -- which
> you cannot count on existing in user tables. Nothing more or less.
In
> some of the system tables it is used as a foreign key to records in
> other system tables, but Oid by itself has no such meaning.
>
> >
> > I have read through all the docs/faqs I can find and still have no
good
> > idea about this.
>
> Take a look at the 'System Catalog' documentation, and in psql the -E
> option will show you the 'system' queries used to retrieve the
> information for display in psql.
>
> --
> Rod Taylor <rbt@rbt.ca>
>
> PGP Key: http://www.rbt.ca/rbtpub.asc