From: | "Oliver Elphick" <olly(at)lfix(dot)co(dot)uk> |
---|---|
To: | "D'Arcy" "J(dot)M(dot)" Cain <darcy(at)druid(dot)net> |
Cc: | pgsql-sql(at)postgreSQL(dot)org |
Subject: | Re: [HACKERS] Re: [SQL] SQL-Query 2 get primary key |
Date: | 1999-02-20 08:32:39 |
Message-ID: | 199902200832.IAA09157@linda.lfix.co.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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(dot)Elphick(at)lfix(dot)co(dot)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
From | Date | Subject | |
---|---|---|---|
Next Message | Anatoly K. Lasareff | 1999-02-20 11:09:41 | Re: [SQL] problem with function in plpgsql |
Previous Message | Bruce Momjian | 1999-02-20 06:06:48 | Re: [SQL] questions on interpreting the output of explain |