Re: Natural keys vs Aritficial Keys

From: robur.6 6 <robur.6_at_gmail.com>
Date: Fri, 3 Jul 2009 01:50:22 -0700 (PDT)
Message-ID: <e94a5682-06b3-4dba-9897-b00740aa2e04_at_y17g2000yqn.googlegroups.com>


On 3 Iul, 10:03, Roy Hann <specia..._at_processed.almost.meat> wrote: ...
> You are trying to capture data about a particular enterprise of
> interest. Within that enterprise of interest some keys will already
> exist and some might have to be created.  To my credit card
> company my credit card number is artificial (since they generate it and
> assign it to me), but to my video rental company it is a natural key.
>

Excellent point. IMHO the problem is not using artificial identities per se, but the correspondence between the real world and the information recorded in the database.

Suppose we have a fruit basket, and we record in a database a generated id for each fruit. If we take out a fruit from the basket which id are we supposed to remove from the database?

A different example. A ticket serial number is artificially generated as well. However since this number is printed on the ticket there is a one-to-one correspondence between the objects in the real world (in this case tickets) and the information in the database. No problems in this case even if we use artificially generated keys. Received on Fri Jul 03 2009 - 10:50:22 CEST

Original text of this message