The Problem

Possible Solutions (neither very good)

A Better Solution

Use a "database". More specifically, use a relational database, which is currently the most widely used of the various choices.

Origin of the Relational Database

E. F. Codd of IBM "invented" the relational database about 1970. Subsequently he developed the concept of normalization to help organize relational databases.

What is a relational database?

Database Design

Database Design Goals

Questions to Ask

Normalization (not necessarily the answer to our prayers, but a good place to start)

The goal of "normalization" is to ensure that every non-key column in every table is directly dependent on the key, the whole key, and nothing but the key. Normalization may help us to achieve our design goals.

Here is a brief description of the first three "normal forms" developed by Codd:

Normal forms are cumulative. This means that to be in second normal form, a table (or database) must first be in first normal form ... and so on, for higher normal forms.