Know How to Read an ER Model
Reading a data model is like reading a map; most elements of a map are instantly recognizable and give the viewer a visual sense of where they are. In databases, the Entity-Relationship (ER) model gives the viewer a visual sense of the data model. Reading an ER model, like reading a map, can be done just for basic information and then, as you become accustomed to reading, you can look deeper for the finer intricacies of the model.
The "E" of the ER model refers to entity; an entity is also referred to as a table. The tables in a database store the data. For example, imagine a database that stores customer information. The tables in a customer database might consist of a customer table, an address table and a phone number table. Each table contains one or more columns.
The "R" of the ER model refers to the relationships the tables have to each other. Imagine a database that stores customer and sales information. The customer table would have a relationship to the sales tale. In order to tie the two tables together and join the information, a column in the sales table must contain a reference to the associated customer. These table relationships are shown on an ER model, which in this case would be a line between the customer and sales tables.
As a map shows places, an ER model shows tables. Once you become comfortable reading the tables on an ER model, a next level of understanding is reading the relationships. As a map shows us how to navigate from one place to another, an ER model shows how the tables relate to one another. Primary keys and foreign keys are two types of relationships usually shown on an ER model.
A primary key is used to uniquely identify each row in each table. The primary key is comprised of a single column or, less frequently, a set of columns. No two rows can have the same value for the primary key. An example would be using the customer name field as the primary key on the customer table.
A foreign key is a referential constraint between two tables. The foreign key identifies a column or a set of columns as a reference to another table. Using the customer database example, a column on the address table is needed to refer back to the customer table. Foreign keys link data and tables together.
Having a sense of the data model is like knowing the primary highways through a state or province. Once you get familiar with reading a data model, you’ll find you won’t want to work with an application without seeing the ER model. It would be like leaving your house without at GPS or road atlas – the data model is the navigation tool into the inner working of an application and its data.