Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Normalization, Natural Keys, Surrogate Keys
"Tobin Harris" <comedyharris_at_hotmail.com> wrote in message
news:ac1apu$locri$1_at_ID-135366.news.dfncis.de...
>
> I think the point is to think about your surrogate keys carfully,
not just
> assign them as habit (which many do). I believe that if you can find
an
> existing natural key, then use it!
I think the issue with implementing natural keys as the physical primary key is that unfortunately, the business changes. What a business analyst swears will never happen, does. Additionally, if we don't use surrogate keys, then dependent rows have a pretty nasty looking foreign key:
parent
child
Whereas when we use surrogate keys we end up with something like the following (notice my naming convention -- which I snarfed from someone else ... can't recall who ... :)
parent
child
The benefits of the surrogate key are:
What's key (pun intended! <go>) is that surrogate keys and natural keys can peacefully co-exist. Kumbaya, kumbaya ...
-- Pablo Sanchez, High-Performance Database Engineering mailto:pablo_at_hpdbe.com http://www.hpdbe.com Available for short-term and long-term contractsReceived on Thu May 16 2002 - 17:35:21 CDT
![]() |
![]() |