Thread: Retrieving Definition for Composite Type

Retrieving Definition for Composite Type

From
"Jordan S. Jones"
Date:
Hey...

Basically, I need the SQL equivalent of psql's "\d composite_type"

Any help would be greatly appreciated..

Jordan S. Jones







Re: Retrieving Definition for Composite Type

From
jasiek@klaster.net
Date:
On Thu, Mar 13, 2003 at 12:32:10PM -0700, Jordan S. Jones wrote:
> Hey...
> 
> Basically, I need the SQL equivalent of psql's "\d composite_type"
> 
> Any help would be greatly appreciated..
> 
> Jordan S. Jones
man psql

Use psql to find all SQL equivalents.
If you run psql with -E, you will be able to read all of SQL queries
psql executes.

Regards,
Tomasz Myrta


Re: Retrieving Definition for Composite Type

From
Joe Conway
Date:
Jordan S. Jones wrote:
> Basically, I need the SQL equivalent of psql's "\d composite_type"

Start psql with the -E option, and you can see all the internally 
generated queries. E.g (ex1_tup is a composite type):

psql -E regression

[snipped all the startup stuff]

regression=# \d ex1_tup
********* QUERY **********
SELECT c.oid,  n.nspname,  c.relname
FROM pg_catalog.pg_class c     LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE pg_catalog.pg_table_is_visible(c.oid)      AND c.relname ~ '^ex1_tup$'
ORDER BY 2, 3;
**************************

********* QUERY **********
SELECT relhasindex, relkind, relchecks, reltriggers, relhasrules
FROM pg_catalog.pg_class WHERE oid = '1336877'
**************************

********* QUERY **********
SELECT a.attname,  pg_catalog.format_type(a.atttypid, a.atttypmod),  (SELECT substring(d.adsrc for 128) FROM
pg_catalog.pg_attrdefd   WHERE d.adrelid = a.attrelid AND d.adnum = a.attnum AND a.atthasdef),  a.attnotnull, a.attnum
 
FROM pg_catalog.pg_attribute a
WHERE a.attrelid = '1336877' AND a.attnum > 0 AND NOT a.attisdropped
ORDER BY a.attnum
**************************

Composite type "public.ex1_tup" Column  | Type
---------+------ relname | name colname | name

HTH,

Joe