Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> c.d.o.server -> Re: Beginner help needed in database design

Re: Beginner help needed in database design

From: Drago Ganic <>
Date: Thu, 3 Feb 2005 12:12:10 +0100
Message-ID: <ctt0u7$frd$>

You and I are entities (something, object .. whatever term You prefer). As such, we have properties (features, attributes, fields, ...) which

>>describe<< us . The whole set of the properties >>identify<< us from other 
>>entities in the Universe. Identification is equivalent to uniqueness, 
>>because You (and I) believe that we are unique and have at least ONE 
>>property which value is different. In we are described with the same set 
>>of properties (but different values) we belong to the same Entity Type (or 
>>Class ... name it). This is also a shortcut, because it's easier to group 
>>the individual entities in sets/types. You and I are in the same set :-)

Yes, the ID numbers are a TECHNICAL shortcut because the number of properties is infinite and we never know them all explicitly .. but we do know (or believe to know) that we are unique. Therefore we need an identification vehicle. People "names" were a nice try to solve the problem. If we lived in a small village with 200 people and with no communication that would be OK. Today, numbers (integers) are used. In 10 or so years fingerprints or eyescans will be used (for entities which have them, of course :-).

So, YES the IDs are a technical thing in so far as NAMES ("Drago Ganic", or "Frank van Bortel") are a technical because we do not now the values of all the attributes. In that case (If we would know everything about anybody) the "natural" key would be it's attribute-value set. In the absence of that knowledge, we add (or invent) an attribute which we call Name, Surname, Name+ Surname, SSN etc.

In the discourse above I have not mention Microsoft, Oracle, IBM, SQL, Java, Basic, pointers, indexes, hash tables etc. So it is and it is not Technology :-)

Greetings from Croatia
Drago Ganic

"Frank van Bortel" <> wrote in message news:ctrh1m$f6s$
> Mark A wrote:

>> "Frank van Bortel" <> wrote in message
>> news:ctqf0h$2ln$
>>>SSN is a prime example is a technical key. Why is
>>>it people do not have a problem recognizing me by name,
>>>but computers do?
>>>Frank van Bortel
>> That is not true. Names are not unique (maybe yours is). For most people,
>> there is another person somewhere with the same exact name. Not true with
>> social security name or employee number (at least it is intended that 
>> these
>> are unique).

> Even when I was called John Doe (which is a common name
> in the US of A, I believe), people know me. The name
> may not be enough, but the features of my face, along
> with the name certainly do.
> And if that's too hard to understand/program for computers
> and uniquely identify me, how about my birth date, my father's
> and mother's names, and their birth dates? Or the fact I write
> to this ng, and have been doing that for about 10 years now?

> Chances are smaller than the number of people on this
> planet, that is not unique.

> But - it is not compact; in the times memory was scarce
> it surely would not have been acceptable. So, take a number.
> Nice and easy, small, and guaranteed to be unique on top of
> it all. And we call it: number.
> And as this particular number was invented by the (US) Social
> Service, let's call it a Social Security Number.

> I don't have one, but I live in a country with a civilized
> social security system :^) I've other numbers attached to
> me...

> But that is what a technical key is: a meaningless
> number (BTW: is SSN really meaningless, or is it coded?),
> instead of (mostly many) fields, together making up a
> unique identifier.

> --
> Regards,
> Frank van Bortel
Received on Thu Feb 03 2005 - 05:12:10 CST

Original text of this message