On 2014-06-11 00:21:58 +0200, Vik Fearing wrote: > On 06/09/2014 07:13 PM, Andres Freund wrote: > > On 2014-06-09 13:42:22 +0200, Vik Fearing wrote: > >> On 06/09/2014 09:06 AM, Gavin Flower wrote: > >>> From memory all unique keys can be considered 'candidate primary keys', > >>> but only one can be designated 'the PRIMARY KEY'. > >> > >> Almost. Candidate keys are also NOT NULL. > > > > The list actually is a bit longer. They also cannot be partial. > > What? AFAIK, that only applies to an index. How can the data itself be > partial?
I don't follow? Gavin above talked about unique keys - which in postgres you can create using CREATE UNIQUE INDEX. And if you make those partial they can't be used for this purpose. > > There's generally also the restriction that for some contexts - like > > e.g. foreign keys - primary/candidate keys may not be deferrable.. > > Again, what is deferrable data? You can define primary/unique constraints to be deferrable. c.f. CREATE TABLE docs. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers