Results 1 to 9 of 9
  1. #1
    Join Date
    Oct 2010
    Posts
    4

    ER versus Normalization

    How does one decide whether to use the ER method or a simple normalization method (1NF/2NF/3NF) when deciding to create an SQL database ?

  2. #2
    Join Date
    Apr 2002
    Location
    Toronto, Canada
    Posts
    20,002
    that's easy -- ya gotta do bofadem

    rudy.ca | @rudydotca
    Buy my SitePoint book: Simply SQL

  3. #3
    Join Date
    Oct 2010
    Posts
    4
    anyone can contribute with a more professional way pl ?

  4. #4
    Join Date
    Nov 2004
    Location
    out on a limb
    Posts
    13,692
    you have to do both of them
    I'd rather be riding on the Tiger 800 or the Norton

  5. #5
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    you have to do both of them.

    BTW - normalisation is a process (so you could call it a method), ER is not a method (I assume you mean ER diagram) - it is a graphical convention for pictorially describing your logical model.

    EDIT - in other words, the ERD is used to display the results of (amongst other things) the normalisation process.
    Last edited by pootle flump; 10-28-10 at 05:41.
    Testimonial:
    pootle flump
    ur codings are working excelent.

  6. #6
    Join Date
    Oct 2010
    Posts
    4
    Do you know of a paper that describes the use of ER and Normalization ?

  7. #7
    Join Date
    Feb 2004
    Location
    One Flump in One Place
    Posts
    14,912
    Testimonial:
    pootle flump
    ur codings are working excelent.

  8. #8
    Join Date
    Apr 2002
    Location
    Toronto, Canada
    Posts
    20,002
    Quote Originally Posted by louismontebello View Post
    Do you know of a paper that describes the use of ER and Normalization ?
    there are quite a few listed here --> ER and normalization

    rudy.ca | @rudydotca
    Buy my SitePoint book: Simply SQL

  9. #9
    Join Date
    Dec 2007
    Location
    London, UK
    Posts
    741
    Quote Originally Posted by pootle flump View Post
    you have to do both of them.
    You don't have to do both of them (or either of them!).

    Entity Relationship Modelling (ERM) is a set of analysis techniques for making data models.

    Entity Relationship Diagrams (ERDs) consist of a pictorial language (actually several different conventions exist) for drawing data models.

    Normalization is a set of logical rules that help analyse and avoid certain problems that arise in relational database design.

    All of these are tools that can help you in database design. They can be complementary. Roughly speaking, ERM could be thought of as a "top down" approach (identifying entities and relationships first) whereas Normalization is more like a "bottom up" approach: identifying dependencies between attributes.

    There are alternative approaches that don't require ERM or ERDs. One such alternative is Object-Role Modelling (ORM - not to be confused with Object/Relational Mapping which is something else entirely). ORM is a fact-based modelling technique and has its own set of diagram conventions that are entirely different to ERDs. ORM also uses a formal procedure to derive a database schema in Normal Form without the user needing to consider Normalization directly. See Object Role Modeling

    There are also formal methods and some CASE tools that don't necessarily require use ERM/ERDs or knowledge of Normalization.

    There are alternatives to ERDs, such as UML.

    I'm not much of a fan of ERM techniques. They are in my opinion far too simplistic for modern databases and ignore too many important aspects of design. Personally I tend to do fact-based types of analysis and then create small, subject-specific ER diagrams only where I need them to communicate concepts to other developers. Despite what some people will tell you, I think ER diagrams are totally useless for communication with non-database professional users.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •