Re: pervasiveness of surrogate (also called synthetic) keys - Mailing list pgsql-general

From Jeff Davis
Subject Re: pervasiveness of surrogate (also called synthetic) keys
Date
Msg-id 1304456913.6858.151.camel@jdavis-ux.asterdata.local
Whole thread Raw
In response to Re: pervasiveness of surrogate (also called synthetic) keys  (Rob Sargent <robjsargent@gmail.com>)
Responses Re: pervasiveness of surrogate (also called synthetic) keys  (Rob Sargent <robjsargent@gmail.com>)
List pgsql-general
On Tue, 2011-05-03 at 13:35 -0600, Rob Sargent wrote:
> Sorry, but I'm confused, but that's common.  Isn't a "natural key" to be
> compose solely from the attributes of the entity?  As in a subset of the
> columns of the table in a third-normalish world. Isn't tacking on
> another column with a concocted id joining the "pervassiveness"?

Not in my opinion. Before cars existed, there was no driver's license
number. The DMV (as it's called in California, anyway) created it, and
it's now a key that they can trust to be unique. It's also an attribute
of the entity now, because it's printed on the cards you hand to people.

The thing that I think is a mistake is to use generated IDs like an
internal implementation detail (i.e. hide them like pointers); then at
the same time mix them into the data model.

Regards,
    Jeff Davis




pgsql-general by date:

Previous
From: Rob Sargent
Date:
Subject: Re: pervasiveness of surrogate (also called synthetic) keys
Next
From: Tom Lane
Date:
Subject: Re: postgres segfaulting on pg_restore