Re: [HACKERS] Re: [SQL] SQL-Query 2 get primary key
От | Oliver Elphick |
---|---|
Тема | Re: [HACKERS] Re: [SQL] SQL-Query 2 get primary key |
Дата | |
Msg-id | 199902200832.IAA09157@linda.lfix.co.uk обсуждение исходный текст |
Ответы |
Re: [HACKERS] Re: [SQL] SQL-Query 2 get primary key
|
Список | pgsql-sql |
"D'Arcy" "J.M." Cain wrote: >Thus spake Marc Grimme >> if I create a table like this: >> CREATE TABLE test ( >> id decimal(3) primary key, >> name varchar(32)); >> >> how can I ask postgres which is the primary key from table test? > >SELECT pg_class.relname, pg_attribute.attname > FROM pg_class, pg_attribute, pg_index > WHERE pg_class.oid = pg_attribute.attrelid AND > pg_class.oid = pg_index.indrelid AND > pg_index.indkey[0] = pg_attribute.attnum AND > pg_index.indisprimary = 't'; > >That lists all the primary keys in your database. Add a "WHERE pg_class >= 'test'" clause to get the specific table. I tried this and got 0 rows. Every value of pg_index.indisprimary is false, although I have nearly 100 tables created with primary keys. (This is with 6.4.2) -- Oliver Elphick Oliver.Elphick@lfix.co.uk Isle of Wight http://www.lfix.co.uk/oliver PGP key from public servers; key ID 32B8FAA1 ======================================== "For the Lord himself shall descend from heaven with a shout, with the voice of the archangel, and with the trump of God; and the dead in Christ shall rise first; Then we which are alive and remain shall be caught up together with them in the clouds, to meet the Lord in the air; and so shall we ever be with the Lord." I Thessalonians 4:16,17
В списке pgsql-sql по дате отправления: