Re: PRIMARY KEY Indexes.

From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Marc Mitchell <marcm(at)eisolution(dot)com>
Cc: <pgsql-admin(at)postgresql(dot)org>
Subject: Re: PRIMARY KEY Indexes.
Date: 2002-01-28 16:59:53
Message-ID: 20020128085350.V75869-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On Mon, 28 Jan 2002, Marc Mitchell wrote:

> pgsqlPostgres automatically creates a unique index to assure data integrity
> (see CREATE INDEX statement).
>
> The online docs at
> http://www.postgresql.org/idocs/index.php?sql-createtable.html state the
> following:
>
> " Postgres automatically creates a unique index to assure data integrity
> (see CREATE INDEX statement). " ... when PRIMARY KEY is specified within a
> CREATE TABLE statement.
>
> My questions:
>
> 1) Are these indexes at all visible to a tool like PGAdmin? How are they
> named?

The name is <table>_pkey. I'd assume they are visible assuming PGAdmin
doesn't hide them and just show the primary key constraint.

> 2) If FORIGN KEY constraints were present on tables, I assume a lookup is
> done at time of INSERT to ensure the referenced value can be found. Would
> such a lookup and the index used be seen in the EXPLAIN or EXPLAIN VERBOSE
> output of an INSERT?

It should generally use the index. There are cases due to the saved plan
where the best plan might change during a session and we won't notice that
until the next session. The explain output won't show the fk lookups as
far as I know, however.

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Chris Dircks 2002-01-28 17:34:57 Re: OT: Decent GUI-based reportwriter for Linux?
Previous Message Tom Lane 2002-01-28 16:51:58 Re: performance problem with version 7.0.3