|
|
Invisible wrote:
> One of the points of a relational database is that several programs can
> use the data, possibly in ways not originally envisaged.
I'd go so far as to say that was the *primary* point. We already had
standard database stuff using pointers, called CODASYL. It sucked if you
wanted to do anything unexpected with it.
> Today, lots and lots of people seem to forget this. They think of a
> database as being a system for holding data that only one application
> uses and only that application understands. This isn't what a database
> is supposed to be. It's supposed to facilitate access by multiple programs.
This si why I laugh at people who say it's better to put the data
consistency assurances in the program.
> Or sometimes it's just for performance. An order can be completely
> identified by the customer it's for, the date it was placed, and what
> was ordered.
Well, probably customer and timestamp. You don't have to know what they
ordered at 14:01 on Jan 23 to find it. The artificial key, being artificial,
is a secondary key, not a primary key. Unless it is printed on the physical
slip you used to take the order, like at a restaurant or something.
--
Darren New, San Diego CA, USA (PST)
The question in today's corporate environment is not
so much "what color is your parachute?" as it is
"what color is your nose?"
Post a reply to this message
|
|