Re: newbie question... how do I get table structure?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Franco Bruno Borghesi <franco(at)akyasociados(dot)com(dot)ar>
Cc: Aaron Bratcher <aaronbratcher(at)abdatatools(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: newbie question... how do I get table structure?
Date: 2004-02-06 16:15:23
Message-ID: 555.1076084123@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Franco Bruno Borghesi <franco(at)akyasociados(dot)com(dot)ar> writes:
> Does anyone know if the ansi sql standard defines any way to do this?
> I've seen the DESCRIBE TABLE/INDEX/... or SHOW TABLE/INDEX/... commands
> in other databases, but I don't really know if they are extensions or
> not.

They are extensions (and very nonstandard ones at that). What the SQL
standard provides are standardized views of the system catalogs located
in the INFORMATION_SCHEMA schema. The per-spec way to do this would
be something like

select column_name, data_type
from information_schema.columns
where table_name = 'foo'
order by ordinal_position;

Now Postgres only got around to supporting the INFORMATION_SCHEMA views
in 7.4 (although in principle you could have defined most of these views
earlier, certainly in 7.3). I'm not real sure how many other DBs
support INFORMATION_SCHEMA either ... it may not be all that "standard".

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Pavel Stehule 2004-02-06 16:24:46 Re: how can I select into an array?
Previous Message Anton Nikiforov 2004-02-06 16:04:53 PL/Ruby