Within psql you can do commands like 
\d <tablename>
to learn rudimentary information about 
a table. 

Try this to learn more sophisticated information 

select u.usename, t.typname, a.attname, a.atttypid, a.attlen, a.attnotnull, a.attnum 
from pg_user u, pg_type t, pg_attribute a 
where u.usesysid = t.typowner 
and t.typrelid = a.attrelid and t.typtype = 'c' and t.typname = 'pg_attribute' 

where 'pg_attribute' should be replaced by the table's name you 
are interested in. 

Unfortunately, I don't know nothing about how to find the primary key 
in a table definition. 
But go for the PostgreSQL documentation - Chapter System Catalogs - 
this should give you at least an idea which system catalog may 
deliver the information. 

Regards, Christoph 


---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/users-lounge/docs/faq.html

Reply via email to