The method for designing a relational database is to use a process commonly known as normalisation. The goal of database normalisation is to:
- Decide if a given relation schema is in ‘good form’.
- If a given relation schema is not in ‘good form’, losslessly decompose it into a number of smaller relation schemas, each of which is in an appropriate good form.
Database normalisation theory is based on functional dependencies and multivalued dependencies.
Notational conventions
- Greek letters are used for attributes.
- denotes a set of attributes which is a superkey.
- Lowercase names are used for relations. Uppercase names are used for relation schemas.
- denotes the relation with schema .