Re: Can FK be nullable/optional by design?
Date: Tue, 16 Dec 2003 22:57:15 -0500
Message-ID: <aoCdnbmkVbe0SUKiRVn-tA_at_golden.net>
"Tobin Harris" <tobin_dont_you_spam_me_at_breathemail.net> wrote in message
news:brnvmp$5gqn4$1_at_ID-135366.news.uni-berlin.de...
>
> "Bob Badour" <bbadour_at_golden.net> wrote in message
> news:tPGdndKS74g91Eei4p2dnA_at_golden.net...
> > Chris Date's _Introduction to Database Management Systems_ makes a good
> > start at them. I would seem foolish to try to teach them in an email
> > message.
>
> Don't worry Bob, I wasn't expecting you to seem foolish, or give a full
> tutorial.
>
> > One would start with "What is data?" and "What does it mean to manage
> data?"
> > From there, one would move to: "What principles facilitate or guide
> > effective data management?" And onward...
>
> Ok, this makes sense.
>
> > Since you apparently think one can easily enumerate them in an email,
what
> > would you describe as the fundamentals?
>
> I hadn't even considered whether it was difficult or not. I was simply
> interested in what your perceived "fundamentals" entailed, mainly so I
could
> go and learn more... I kind of expected you to mention some general
topics,
> which may or may not have included:
>
> Normalization - learning how to extrapolate to 1st, 2nd and 3rd normal
form
> schemas
> Integrety - learning that integrety applies at various levels - Domain,
> Column, Table, Database (Referential)
> Data Types - seen as sets of permissable values that enforce business
rules
> by constraining the data that is stored.
> Top-Down Analysis - learning to identify entities and business rules by
> reading existing documentation, verbal communication etc
> Bottom Up Analysis - learning to derive and normalise attribute listings
> Keys and Identity - different types and why
Your list of "fundamentals" does not answer any of the questions "What is data?", "What does it mean to manage data?" or "What principles facilitate or guide effective data management?"
Of the items in your list above, integrity and data types are fundamental,
but your elaborations above are anything but fundamental.
One can come up with any number of taxonomies for integrity
constraints--Chris Date has published enough of them in his career. The
taxonomy I find most enlightening is: All integrity constraints constrain
variables. Integrity is fundamental because it is fundamental to the
manipulation function when managing data.
A data type does not enforce business rules--the integrity function of the
dbms does this. Data type is fundamental to computing and not only to data
management. A data type comprises both a set of values and a set of
operations on those values. With respect to the relational model, Date and
Darwen have observed that data types define what we can make statements
about, and relations make statements about them.