Ultimate Guide to ER Diagrams ( Entity Relationship Diagrams )

An Entity Relationship Diagram (ERD) is a visual representation of different data using conventions that describe how these data are related to each other. For example, the elements writer, novel, and consumer may be described using ER diagrams this way:

ER Diagram Example

ER diagram with basic objects

In the diagram, the elements inside rectangles are called entities while the items inside diamonds denote the relationships between entities. This ER diagram tutorial for beginners covers most things related to ER diagram, for quick navigation use the links below.

ER Diagrams Usage

While able to describe just about any system, ER diagrams are most often associated with complex databases that are used in software engineering and IT networks. In particular, ER diagrams are frequently used during the design stage of a development process in order to identify different system elements and their relationships with each other. For example, an inventory software used in a retail shop will have a database that monitors elements such as purchases, item, item type, item source and item price. Rendering this information through an ER diagram would be something like this:

ER diagram example with entity having attributes

ER diagram example with entity having attributes

In the diagram, the information inside the oval shapes are attributes of a particular entity.

History of ER Diagrams

ER diagrams are visual tools that are used in the Entity-Relationship model initially proposed by Peter Chen in 1976 to create a uniform convention that considers both relational database and network views. Chen envisioned the ER model as a conceptual modeling approach that views real world data as systems of entities and relationships. Entities are data objects that maintain different relationships with each other. Additionally, entities are also described further using attributes.
Since 1976, the ER model has been expanded and is sometimes used in business management, product development, and strategy formulations. However, database design remains its primary application.

ER Diagram Symbols and Notations

Elements found in ER diagrams

Elements in ER diagrams

There are three basic elements in an ER Diagram: entity, attribute, relationship. There are more elements which are based on the main elements. They are weak entity, multivalued attribute, derived attribute, weak relationship and recursive relationship. Cardinality and ordinality are two other notations used in ER diagrams to further define relationships.

Entity

An entity can be a person, place, event, or object that is relevant to a given system. For example, a school system may include students, teachers, major courses, subjects, fees, and other items. Entities are represented in ER diagrams by a rectangle and named using singular nouns.

Weak Entity

A weak entity is an entity that depends on the existence of another entity. In more technical terms it can defined as an entity that cannot be identified by its own attributes. It uses a foreign key combined with its attributed to form the primary key. An entity like order item is  a good example for this. The order item will be meaningless without an order so it depends on the existence of order.

Weak Entity in Entity Relationship Diagrams

Weak Entity Example in ER diagrams

Attribute

An attribute is a property, trait, or characteristic of an entity, relationship, or another attribute. For example, the attribute Inventory Item Name is an attribute of the entity Inventory Item. An entity can have as many attributes as necessary. Meanwhile, attributes can also have their own specific attributes. For example, the attribute “customer address” can have the attributes number, street, city, and state. These are called composite attributes. Note that some top level ER diagrams do not show attributes for the sake of simplicity. In those that do, however, attributes are represented by oval shapes.

Attributes in ER Diagrams

Attributes in ER diagrams, note that an attribute can have its own attributes ( composite attribute )

Multivalued Attribute

If an attribute can have more than one value it is called an multivalued attribute. It is important to note that this is different to an attribute having its own attributes. For example a teacher entity can have multiple subject values.

Multivalued attribute in entity relationship diagrams

Example of a multivalued attribute

Derived Attribute

An attribute based on another attribute. This is found rarely in ER diagrams. For example for a circle the area can be derived from the radius.

Derived Attribute in ER diagrams

Derived Attribute in ER diagrams

Relationship

A relationship describes how entities interact. For example, the entity “carpenter” may be related to the entity “table” by the relationship “builds” or “makes”. Relationships are represented by diamond shapes and are labeled using verbs.

Relationships in ER diagrams

Using Relationships in Entity Relationship Diagrams

Recursive Relationship

If the same entity participates more than once in a relationship it is known as a recursive relationship. In the below example an employee can be a supervisor and be supervised, so there is a recursive relationship.

Recursive Relationship in ER Diagrams

Example of a recursive relationship in ER diagrams

Cardinality and Ordinality

These two further defines relationships between entities by placing the relationship in the context of numbers. In an email system, for example, one account can have multiple contacts. The relationship in this case follows a “one to many” model. There are number of notations used to present cardinality in ER diagrams. Chen, UML, Crow’s foot, Bachman are some of the popular notations. Creately supports Chen, UML and Crow’s foot notations.The following example uses UML to show cardinality.

Cardinality in ER diagrams

Cardinality in ER diagrams using UML notation

Tips on How to Draw ER Diagrams

Because ER diagrams are simple enough to understand, just about anyone can create them. However, two different ER diagrams describing the same system may still be radically different in terms of their simplicity, completeness, and efficiency at communicating the system. In other words, there are good ER diagrams and there are poor ones.

Because this ER tutorial focuses on beginners below are some tips that will help you build effective ER diagrams:

  1. Identify all the relevant entities in a given system and determine the relationships among these entities.
  2. An entity should appear only once in a particular diagram.
  3. Provide a precise and appropriate name for each entity, attribute, and relationship in the diagram. Terms that are simple and familiar always beats vague, technical-sounding words. In naming entities, remember to use singular nouns. However, adjectives may be used to distinguish entities belonging to the same class (part-time employee and full time employee, for example). Meanwhile attribute names must be meaningful, unique, system-independent, and easily understandable.
  4. Remove vague, redundant or unnecessary relationships between entities.
  5. Never connect a relationship to another relationship.
  6. Make effective use of colors. You can use colors to classify similar entities or to highlight key areas in your diagrams.

You can draw entity relationship diagrams manually, especially when you are just informally showing simple systems to your peers. However, for more complex systems and for external audiences, you need diagramming software such as Creately’s to craft visually engaging and precise ER diagrams. The ER diagram software offered by Creately as an online service is pretty easy to use and is a lot more affordable than purchasing licensed software. It is also perfectly suited for development teams because of its strong support for collaboration.

ER Diagram Templates

Below are some ER diagram templates so you can get started quickly. Clicking on the image and in the new page that opens click the “Use as Template” button. For more templates check out ER diagram templates article.

ER Diagram Template

ER Diagram Template of exam database ( Click on the image to use as template )

A basic ER diagram template for a quick start

Entity Relationship Diagram Template

Basic ER Diagram template ( Click to use as template )

Benefits of ER diagrams

ER diagrams constitute a very useful framework for creating and manipulating databases. First, ER diagrams are easy to understand and do not require a person to undergo extensive training to be able to work with it efficiently and accurately. This means that designers can use ER diagrams to easily communicate with developers, customers, and end users, regardless of their IT proficiency. Second, ER diagrams are readily translatable into relational tables which can be used to quickly build databases. In addition, ER diagrams can directly be used by database developers as the blueprint for implementing data in specific software applications. Lastly, ER diagrams may be applied in other contexts such as describing the different relationships and operations within an organization.

References

1. Entity-relationship model as published on Wikipedia.
2. Entity Relationship Diagram by Mike Chapple as published on the About.com website
3. Entity-Relationship Modelling by Craig Borysowich as published on the Toolbox.com website

Tags :, , ,

About the Author

About Nishadha

Software engineer turned tech evangelist. I handle marketing stuff here at Creately including writing blog posts and handling social media accounts. In my spare time I love to read and travel. Check out my personal blog Rumbling Lankan where I write about online marketing stuff.

122 thoughts on “Ultimate Guide to ER Diagrams ( Entity Relationship Diagrams )

  1. The model that you espouse (attributes in ovoids, aka ‘the lollipop model’) is OK for small systems with very limited number of attributes per entity. Unfortunately, some students try to use it for llarger assignments (20 entities with up to 20 attributes per entity) and the whole model becomes unreadable unless they use A2-sized paper. If I never see another model of this type, it will too soon!!

  2. I am an Engineering Student and needed this for my exams.
    I can now surely bet on it that I can crack any ER-Diagram
    Thanks to author.

  3. Hi, I have to do an ER model for a travel game app but we have not been shown how in college. Can anyone please give me some ideas on how to go about this.

    The player or multiple players are required to navigate their way to the objective location using the transport infrastructure in a city or area, the games A.I places them in. The maps will be updated on a frequent basis to add variety to the user’s experience.

    Thanks

  4. Draw ER diagram for the following “A
    teacher can teach many courses. A student
    can enrol in many courses. A course may
    be a part of one or many programmes. A
    teacher can be mentor of many students,
    however a student can have only one
    mentor.”

    Can you answer above Q Please

  5. Examples are very simple and useful to understand ER Diagram.But if you take a simpl eproblem statement and explain how to identify entity,relationships etc… it would be more helpful to understand.

  6. Its really good. Understanding the basic concepts of ER diagram with simple language with very good examples. It is easy to for us to know the contents. Thank You Sir.

  7. i have some five problem like this can u help?
    1.Cargo Tracking Management System
    2.Supermarket Sales and Inventory Control System
    3.Emergency Call Management System
    4.Job Management System

    I want to what are the entities of these problems?

  8. I have still confusion on creating a relationship between two entities,does relationship block have also attributes of its own please help me with this.

  9. I was just wondering…I have an application form with me…the link is attached below. Could you please tell me what entities exist within this application form?
    For instance, one entity would be applicant—> attributes consisting of Fname, Lname, address…etc

    Your help would be greatly appreciated.

    Application form:
    http://dairyqueenwest.com/employmentapplication.pdf

  10. Its soo hard and I am thinking deeply in my project Callisto Groceru Store. I dont know what is the flow of this grocery store

  11. nicelly defined , i want to make ER diagram for press club. I have some confusions but
    after visit this website i have believe Insha Allah i will make easilly.

  12. with a diagram can be seen apparently from one component to the other components of related this way will be easier for people to understand the meaning

  13. I required this for my dbms exam in the morning. This article is so well explained enough for a one legged man to run a marathon. Thank you dear editor.

  14. Thanks dear. but i also need to know about the ‘arrow headed line’ and ‘double lines’ . Can we use arrow heads in ER diagrams? If it is, then how?

  15. good .u can also draw the attributes from the entity tablle as a little ballon , on top of the ballon u can write the entity names.

  16. What about the tables in a database which are not interrelated? How to show ER diagram of a complete database with few related tables and few other non-related tables. It’s not necessary that each and every table in a database in interrelated.

  17. Dear sir thank you for this. today is my exam. i did not knw anything about ER diagram. i guess i can write nicely for exam to. thank u again

  18. hi i am student of b.c.a 6th sem. ,i can’t draw ER diagram for my project website.in my project i have 4 database tables so, how i creat ER diagram

  19. A Supplier located in only one city supplies various parts for the project to different companies located in various cities. Draw the “E-R” for the supplier and parts database.

    can i get the ER diagram for this

  20. Many readers will be benefiting from your blog. Thanks for listing the ERP Diagrams which is necessary software for businesses. Thanks for sharing such a useful diagrams list..

  21. Awesome guide for ERD, i understand a lot of about creating a good erds in half hour.

    appreciated from heart.

  22. Thank you sooo much for this blog. It really helps me a lot to create ER Diagram for my project. Well Explained :)

  23. Never seen this notation before… everything looks like 1:1 … mixes attribute relations, entity relations, and verbs. Anyway.. at least it is a notation.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

This blog uses premium CommentLuv which allows you to put your keywords with your name if you have had 9 approved comments. Use your real name and then @ your keywords (maximum of 3)