Database Normalization -


I'm new to database design and I'm reading a lot about generalization. If I had three applause: accommodation, train station and airport should I get the address column in each table or an address table, which is referred to by other tables? Is there something like super-generalization?

Thanks

Database generalization is about the creation of all relationships (tables) Which maintain some functional dependency between the facts (column) within the relation (table) and between the various relations (tables) that make the schema Mouth is full of, but it is all about what it is.

Classic references to common forms are. This paper defines in simple terms that the essence of each common form and its importance in relation to database table design. This is a very good "touch-stone" reference.

Additional information is needed to answer your specific question. Some important questions that you want to ask are:

  • Is an address a simple fact (such as text Or other "facts" related to "housing", "airport" and "train station" (such as address line, city name, postal code etc.) or a composite fact (such as address lines, city name, postal code etc)
  • "What are you?
  • A "airport", a "residence" and "train station" (these facts are usually called a key or a candidate key) which sets the specific and least identifying "facts" Are you
  • What is the functional reliance in the facts about the facts and the key to each relationship?

To say all this, the answer to your question is not straight forward as anyone can expect!

Is there any such thing on "generalization"? Maybe. It depends on whether your functional reliance is used to identify and build your tables, the importance of your application domain.

For example, suppose it was determined that an address was made up of multiple attributes; One of these is the postal code. Technically, a postal code is also an aggregate item (at least Canada postal code). In addition to recognizing these facts, it would possibly be an over-generalization to normalize your database. This is because the postal code components are irrelevant to your application and therefore they will have an over-generalization factoring in the database design.


Comments