Normalization of a table

database-designnormalizationrelations

I am trying to normalize the following table but having some difficulties

Mem_id mem_name phone email Book_num Book_titl Author_nam publication edition
100     smith    12443 eml1    200     physics   john         MACGROW   1ST
100     smith    12443 eml1    201     math      martin,tina  MACGROW   2ND
101     hena     1020  eml2    200     physics   john         MACGROW   2ND 
102     moon     2020  eml3    204     new java  korth,chira  ALPHA     4TH

1NF:

Member:

Mem_id mem_name phone email 

100     smith    12443 eml1 

101     hena     1020  eml2    

102     moon     2020  eml3

Book:

Mem_id Book_num  Book_titl  Author_name  publication edition

100     200       physics      john        MACGROW      1ST

100     201       math       martin,tina   MACGROW      2ND

101     200       physics      john        MACGROW      2ND

102     204       new java   korth,chira   ALPHA        4TH

2NF:

Member:

Mem_id mem_name phone email 

100     smith    12443 eml1 

101     hena     1020  eml2    

102     moon     2020  eml3

Issue:

Mem_id Book_num  

100     200       

100     201       

101     200       

102     204       

Book:

Book_num  Book_titl  Author_name  publication edition

200       physics      john        MACGROW      1ST

201       math       martin,tina   MACGROW      2ND

204       new java   korth,chira   ALPHA        4TH

Now i am having difficulty here.Am i on the right way to the normalization ?Is it possible to normalize the book table to 3NF OR it is already in 3NF ?

Best Answer

Actually, you could go a little further and take the Author out and having a new table named Authors and you could be more rigid and take publication as well.

Book:

Book_num  Book_titl  Author_id  publication edition

200       physics      1        MACGROW      1ST

201       math         2        MACGROW      2ND

204       new java     3        ALPHA        4TH

Author:

Author_id Author_name

   1      john

   2      martin,tina

   3      korth,chira

Still, remember that going full onto normalization has drawbacks on performance as well.

It all depends on the business and how you are trying to manage the data.