Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!bionet!ames!sgi!shinobu!odin!hargrove From: hargrove@harlie.sgi.com (Mark Hargrove) Newsgroups: comp.databases Subject: Re: Do you normalize? Message-ID: Date: 19 Jul 89 18:18:23 GMT References: <242@6sigma.UUCP> <1581@cod.NOSC.MIL> Sender: news@odin.SGI.COM Organization: Silicon Graphics Inc, Mountain View, CA Lines: 40 In-reply-to: dberg@cod.NOSC.MIL's message of 19 Jul 89 19:20:51 GMT In article <1581@cod.NOSC.MIL> dberg@cod.NOSC.MIL (David I. Berg) writes: > >I always normalize. Remember, a database is a mapping of a bounded enterprise >environment. Each relation, or table, in the database is mapped from some >entity set or object type in the enterprise. If you want your database to >accurately map the enterprise it represents, you will normalize it. (And >this is true for any database supporting any application.) When >your users apply logical transactions against the database, they will properly >reflect the actual operation that generated the transaction. > >I usually normalize to 3NF, I do it by hand, and I use INFORMIX. > I've got to (mostly) agree with David. We always normalize to at least 2NF and usually to 3NF. I can recall one or two instances where 4NF was appropriate. We also do the job by hand, but this isn't really hard. After designing a few databases, you start to *think* in normal form. My only disagreement is over the assertion that normal form represents an 'accurate' mapping of an enterprise. To me, 'normal form' is a series of rules that describe the "right" way to represent objects, entities and relationships *within the relational model*. The relational model is NOT the most natural or 'accurate' way to represent all enterprises. In fact, for representing objects with very complex structure (such as graphical objects, or the data structures representing the state of a manufacturing shop-floor), the relational model often forces peculiar representations. On the other hand: if what David means is that normal form gives the most accurate representation of an entrprise *given that you must operate within the relation model*, then I agree completely :-). -- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Mark Hargrove Silicon Graphics, Inc. email: hargrove@harlie.sgi.com 2011 N.Shoreline Drive voice: 415-962-3642 Mt.View, CA 94039