Re: Is PRIMARY KEY the same as UNIQUE NOT NULL? - Mailing list pgsql-general

From Harald Fuchs
Subject Re: Is PRIMARY KEY the same as UNIQUE NOT NULL?
Date
Msg-id 87mvrm6s3k.fsf@hf.protecting.net
Whole thread Raw
In response to Is PRIMARY KEY the same as UNIQUE NOT NULL?  (Ben Leslie <benno@benno.id.au>)
Responses Re: Is PRIMARY KEY the same as UNIQUE NOT NULL?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Ben Leslie <benno@benno.id.au> writes:

> "Technically, PRIMARY KEY is merely a combination of UNIQUE and NOT NULL"
>
> I wanted to clarify if that was, technically, true.

Yes, but see below.

> "identifying a set of columns as primary key also provides metadata
> about the design of the schema, as a primary key implies that other
> tables can rely on this set of columns as a unique identifier for
> rows."

This means that e.g. you can use

  ALTER TABLE othertbl FOREIGN KEY (refid) REFERENCES mytbl

without specifying the column(s) of mytbl.  This implies that there can
be only one primary key (possibly covering more than one column), and
that's the second difference to UNIQUE NOT NULL.


pgsql-general by date:

Previous
From: Ben Leslie
Date:
Subject: Is PRIMARY KEY the same as UNIQUE NOT NULL?
Next
From: Tom Lane
Date:
Subject: Re: Is PRIMARY KEY the same as UNIQUE NOT NULL?