Question

Basically sorry for asking such question.But I got it wrong when I wrote these definitions in my exam about 1,2,and 3rd normal form (Conditions):

1 NF :

  1. Data in each column should be atomic.No, multiple values separated by commas
  2. Table should not contain repeating column groups
  3. Identify each record using primary key.

2 NF :

  • must be in 1 NF
  • must not contain redundant data, if yes, move it to separate table
  • create table using foreign keys

3 NF :

  • Must be in 2NF
  • Dose not contain column that are not fully depended upon primary key

Have I written something wrong?My teacher does not agree.

Source this Video.

Was it helpful?

Solution 2

I believe the answer is wrong. You are not using terms that are associated with normalization when you should. An example of this can be found in your answer for 2NF

  • must not contain reduntant data, if yet, move it to seperate table
  • create table using foreign keys

When is data redundant? Which data do you move to a seperate table? Is creating a table always a step you take to get a table in 2NF?

If you would have said:

  • All attributes which are not part of the primary identifier should be completely dependent on the entire primary identifier.

You are still saying the exact same thing, no redundant data is allowed, but the way you say it shows that you know what normalization is all about.

OTHER TIPS

1NF

A row of data cannot contain repeating group of data i.e each column must have a unique value. Each row of data must have a unique identifier.

2NF

A table to be normalized to Second Normal Form should meet all the needs of First Normal Form and there must not be any partial dependency of any column on primary key. It means that for a table that has concatenated primary key, each column in the table that is not part of the primary key must depend upon the entire concatenated key for its existence. If any column depends only on one part of the concatenated key, then the table fails Second normal form

3NF

Third Normal form applies that every non-prime attribute of table must be dependent on primary key. The transitive functional dependency should be removed from the table. The table must be in Second Normal form.

More references:

  1. http://www.studytonight.com/dbms/database-normalization.php
  2. http://holowczak.com/database-normalization

According to your answers in exam:

1 NF :

a.Data in each column should be atomic.No, multiple values separated by commas (TRUE because 1NF does not support Composite and Multivalued attributes and more importantly, this property is handeled during ER Model to relational model conversion by default.) Only this property is enough for 1NF.

b.Table should not contain repeating column groups. (Not required)

c.Identify each record using primary key. (Not required)

2 NF :

a.must be in 1 NF (TRUE)

b.must not contain redundant data, if yes, move it to separate table. (TRUE but here we only focus on Partial dependency. Removal of Partial Dependency is enough for 2NF.And after its removal if some redundant data is still exist,Its OK for 2NF.)

c.create table using foreign keys (FALSE, Break the table into 2-parts in such a way where common attribute between them behaves as a Candidate Key for any of decomposed table ) Example: R(A,B,C,D) , lets suppose we want to break this table for 2NF, so decomposition is done in such a way like, (AB) and (BCD) where common attribute(HERE: 'B') behaves as a Candidate key for any of (AB) or (BCD) ).

3 NF :

a.Must be in 2NF (Not neccessarily true, even it is not in 2NF you can go with 3NF.When it will be in 3NF ,it automatically satisfy 2NF Properties)

b.Dose not contain column that are not fully depended upon primary key (Way of writing is wrong, You should write "In 3NF, Transitive Dependency(Non prime attribute derives prime attribute) is not allowed")

*Remember: Always keep this thing in mind that, following 1NF to 2NF, 2NF to 3NF, 3NF to BCNF is not a rule ,its a convention. Means you can directly go for BCNF(0% redundancy).

Hope this helps. For more detail, you can also refer : Detailed explanation of Normal forms

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top