Designing Databases for Historical Research

D. Relationships

D2. Functions of relationships

These dual functions of relationships are best illustrated with an example.

Imagine a database which contained data about people and the hats that they owned, comprising personal information about name, gender, age and so on, as well as information about hat type and the materials used in their manufacture. There are two ways that this database could be designed:

  • A single (flat file) table data model, where all of the information about people and hats was entered into the same table
  • A relational data model where two tables are created, one to contain information about people, and one to contain information about hats

The two scenarios are both feasible and will allow you to conduct a detailed analysis of people and their hats, but each brings with them some very significant consequences if chosen.


Scenario A: all information in one table

Scenario B: two related tables