ERD stands for entity relationship diagram. People also call these types of diagrams ER diagrams and Entity Relationship Models.
An ERD visualizes the relationships between entities like people, things, or concepts in a database. An ERD will also often visualize the attributes of these entities.
By defining the entities, their attributes, and showing the relationships between them, an ER diagram can illustrate the logical structure of databases.
This is useful for engineers hoping to either document a database as it exists or sketch out a design of a new database.
Back to top
An ER diagram can help businesses document existing databases and thereby troubleshoot logic or deployment problems or spot inefficiencies and help improve processes when a business wants to undertake business process re-engineering. ERDs can also be used to design and model new databases and make sure that engineers can identify any logic or design flaws before they're implemented in production.
- Document an existing database structure
- Debug, troubleshoot, and analyze
- Design a new database
- Gather design requirements
- Business process re-engineering (BPR)
When documenting a system or process, looking at the system in multiple ways increases the understanding of that system. ERD diagrams are commonly used in conjunction with a data flow diagram to display the contents of a data store. They help us to visualize how data is connected in a general way, and are particularly useful for constructing a relational database.
Back to top
Peter Chen developed ERDs in the 1970s and published his proposal for entity relationship modeling in a 1976 paper titled "The Entity-Relationship Model: Toward a Unified View of Data".
Peter Chen was a computer scientist who worked on improving database design. His entity relationship model was a way to visualize a database that unified other existing models into a single understanding that removed ambiguities. Prior to ERDs, there were three data models for databases: the network model, the relational model, and the entity set model.
Each had their own strengths and weaknesses, but none provided a complete view of the database.
With an ERD, Chen could provide a unified framework for database modeling.
Peter Chen's work was greatly influenced by scientists and engineers who came before him, specifically Charles Bachman, who worked on visualizing databases in the 1960s and his data structure diagrams became known as Bachman diagrams.
Chen's entity relationship model is in many ways the foundation for later practices like Unified Modeling Language or UML in information systems.
In the 1980s, another computer scientist named James Martin, worked to further refine Chen's ER model and introduced what's known today as the IE notation. IE notation uses Crow's foot to express cardinality (one to many relationship) instead of Chen's notation to epxress the same.
Back to top
ER diagrams will differ on how they express cardinality. They will also differ in how they display entities and their attributes and whether or not they show relationships or attributes as separate symbols.
Cardinality is the mathematical sense just means the number of values in a set. In relationship to databases and ERD, cardinality specifies how many instances of an entity relate to one instance of another entity. Ordinality is also closely linked to cardinality. While cardinality specifies the occurrences of a relationship, ordinality describes the relationship as either mandatory or optional. In other words, cardinality specifies the maximum number of relationships and ordinality specifies the absolute minimum number of relationships.
In other words, there will be multiple instances of each entity in a database. Cardinality allows you express the number of each entity that can be associated with another entity. For example, in an employee database, a manager will have multiple employee reports (in a one to many relationship), but an employee will only have one ID number (a one to one relationship). There are three main types of relationships in a database expressed using cardinality notation in an ER diagram.
There are many notation styles that express cardinality.
Back to top
Information Engineering Style, IE Notation or Crow's Foot Notation
There are two reasons to create a database diagram. You're either designing a new schema or you need to document your existing structure.
If you have an existing database you need to document, you can create a database diagram using data directly from your database. You can export your database structure as a CSV file (there are some scripts on how to this here), then have a program generate the ERD automatically.
This will be the most accurate portrait of your database and will require no drawing on your part.
Here's an example of a very basic database structure generated from data.
This type of ERD will be considered a physical data model and will contain all the technical details of your database using IDEF1X notation.
If you want to create a new plan, you can edit the generated diagram and collaborate with your team on what changes to make.
Learn more about generating ER diagrams from data automatically using SmartDraw's ERD extension.
Back to top