Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Large databases
No, no, no, its my tailor's database and he only measures once and he
won't be my tailor if I lose an arm (he adores symmetry). My point is
that it is not possible to determine if a design is normalized unless
you know something about the business requirements you are designing to.
Some of your "normalizations" introduce attributes that may or may not
be tracked. If I have a unique set of attributes that are dependent on
my surrogate key and do not contain repeating groups, and are not
partially dependant on the key, then I'm third normal. And only the
application requirements can determine what the attributes desired are,
the desired frequency of collection, and hence what the definition of
normal will be. If you redefine the problem domian of course you can
make virtually any attribute a repeating group merely by adding history.
Which is largely what you did. My claim is that requirements ->
attributes -> entities -> keys -> normalization.
I admit that you were right on the age one, so to replace it my tailor sells running shoes to me over the phone and so wants to track PRONATION_CD VARCHAR2(3) which he will measure as required but he only cares about the current value. Still over 20 attributes and normalized in light of the requirements.
Allan
-----Original Message-----
Sent: Wednesday, April 16, 2003 4:19 PM
To: Multiple recipients of list ORACLE-L
Note inline
Regards
Jonathan Lewis
http://www.jlcomp.demon.co.uk
The educated person is not the person who can answer the questions, but the person who can question the answers -- T. Schick Jr
One-day tutorials:
http://www.jlcomp.demon.co.uk/tutorial.html
____UK_______April 22nd ____USA_(FL)_May 2nd ____Denmark__May 21-23rd ____Sweden___June ____Finland__September ____Norway___September
Three-day seminar:
see http://www.jlcomp.demon.co.uk/seminar.html
____UK_(Manchester)_May x 2 ____Estonia___June (provisional) ____Australia_June (provisional) ____USA_(CA, TX)_August
The Co-operative Oracle Users' FAQ
http://www.jlcomp.demon.co.uk/faq/ind_faq.html
> CREATE TABLE PERSON (
> PERSON_ID NUMBER,
> FNAME VARCHAR2(20),
> MNAME VARCHAR2(20),
> LNAME VARCHAR2(30),
Denormalize names - First/Middle/Last is not the only option: (person_id, name_position, name)
> RACE_ID NUMBER(25), /*allows for proliferation
> of pc categories */
Denomralize: (person_id, race_id, percentage)
> BIRTH_DATE DATE,
> AGE NUMBER(3),
Derived information - eliminate
> HANDEDNESS CHAR(1),
> SEX CHAR(1),
Denormalize: (person_id, date_form, sex)
> HEIGHT NUMBER(3),
Denomralize (person_id, date_measured, height)
> WEIGHT NUMBER(3),
as above
> WAIST NUMBER(2),
as above
> INSEAM NUMBER(2),
(person_id, left_right, date_measured, length)
> COLLAR NUMBER(2),
as waist
> ARM_LEN VARCHAR2(5),
as inseam
> HAT_SIZE VARCHAR2(4),
as waist
> SHOE_SIZE VARCHAR2(5),
as inseam
> EYE_COLOR_CD VARCHAR2(3),
(person_id, left_right, colour_code)
> HAIR_COLOR_CD VARCHAR2(3),
(person_id, date_measured, colour_code)
> MARRIED CHAR(1),
(person_id, date_from, status)
> EDUCATION_CD NUMBER(1),
(person_id, date_achieved, code)
which brings us down to:
person_id
birth_date
handedness -- (but what if you lost your arm, and learned ?!)
Um !
> Now, that's over 20 and afaik normalized, no repeating groups, no
> dependency on non key atttibutes, just to point out that aribitrary
> numerical limits don't mean much if no business requirements are in
> view.
-- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Jonathan Lewis INET: jonathan_at_jlcomp.demon.co.uk Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing). ______________________________________________________________________________ This email is intended solely for the person or entity to which it is addressed and may contain confidential and/or privileged information. Copying, forwarding or distributing this message by persons or entities other than the addressee is prohibited. If you have received this email in error, please contact the sender immediately and delete the material from any computer. This email may have been monitored for policy compliance. [021216] -- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Nelson, Allan INET: anelson_at_midf.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).Received on Wed Apr 16 2003 - 16:54:49 CDT
![]() |
![]() |