Search code examples
databasedatabase-normalization

Normalizing Two Column Table


I'm trying to normalize a database, and we currently have a table called BOOK, where ISBN (FK) and CoverType are the columns, and they're concatenated together to make a PK.

i.e.

BOOK

|       ISBN       |  CoverType  |
|__________________|_____________|
|  978-0132354790  |   Hardback  |
|  978-0132354790  |   Paperback | 

Is this table already normalized? I'm assuming it is, but I don't really have much of a justification behind it. Thanks


Solution

  • As it is in your post BOOK(ISBN, COVERTYPE) is normalized because all your fields are single-valued, and no part of the primary key can be derived from a subset of it (e.g. you can't tell which are all the possible CoverTypes for an ISBN just by looking at the ISBN itself, and so is the other way round).