database Lecture 4
database Lecture 4
(ER model)
Learning Objectives
• Learn how relationships between entities are defined and refined, and how such relationships are
incorporated into the database design process
• It is a high-level data model. This model is used to define the data elements and relationship for a specified
system.
• It develops a conceptual design for the database. It also develops a very simple and easy to design view of data.
• ER-modeling is a data modeling method used in software engineering to produce a conceptual data model of an
information system. Diagrams created using this ER-modeling method are called Entity-Relationship Diagrams or
ER diagrams or ERDs.
ER MODEL
• For example, Suppose we design a school database. In this database, the student will be an entity with
attributes like address, name, id, age, etc. The address can be another entity with attributes like city, street
name, pin code, etc and there will be a relationship between them.
Purpose of ERD
• The database analyst gains a better understanding of the data to be contained in the database through the step of
constructing the ERD.
• Finally, the ERD is used to connect the logical structure of the database to users. In particular, the ERD effectively
communicates the logic of the database to users.
Notations of ER diagram
Notations of ER diagram
Components of ER Diagram
1. Entity:
• An entity may be any object, class, person or place. In the ER diagram, an entity can be represented as
rectangles.
• Consider an organization as an example- manager, product, employee, department etc. can be taken as
an entity.
•
Weak Entity
• An entity that depends on another entity called a weak entity. The weak entity doesn't contain any key
attribute of its own. The weak entity is represented by a double rectangle.
2. Attribute
• The attribute is used to describe the property of an entity. Eclipse is used to represent an attribute.
• For example, id, age, contact number, name, etc. can be attributes of a student.
• Every ellipse represents one attribute and is directly connected to its entity
(rectangle).
a. Key Attribute
• The key attribute is used to represent the main characteristics of an entity. It represents a primary key. The key
attribute is represented by an ellipse with the text underlined.
b. Composite Attribute
• An attribute that composed of many other attributes is known as a composite attribute. The composite attribute is
represented by an ellipse, and those ellipses are connected with an ellipse.
• If the attributes are composite, they are further divided in a tree like structure. Every node is then connected to
its attribute. That is, composite attributes are represented by ellipses that are connected with an ellipse.
c. Multivalued Attribute
• An attribute can have more than one value. These attributes are known as a multivalued attribute. The double
oval is used to represent multivalued attribute.
• For example, a student can have more than one phone number.
d. Derived Attribute
• An attribute that can be derived from other attribute is known as a derived attribute. It can be represented by a
dashed ellipse.
• For example, A person's age changes over time and can be derived from another attribute like Date of birth.
3. Relationship
• A relationship is used to describe the relation between entities. Relationships are represented by diamond-
shaped box. Name of the relationship is written inside the diamond-box. All the entities (rectangles) participating
in a relationship, are connected to it by a line.
Types of relationship
a. One-to-One Relationship
• When only one instance of an entity is associated with the relationship, then it is known as one to one
relationship.
• For example, A female can marry to one male, and a male can marry to one female.
Types of relationship
b. One-to-many relationship
• When only one instance of the entity on the left, and more than one instance of an entity on the right associates
with the relationship then this is known as a one-to-many relationship.
• For example, Scientist can invent many inventions, but the invention is done by the only specific scientist.
Types of relationship
c. Many-to-one relationship
• When more than one instance of the entity on the left, and only one instance of an entity on the right associates
with the relationship then it is known as a many-to-one relationship.
• For example, Student enrolls for only one course, but a course can have many students.
Types of relationship
d. Many-to-many relationship
• When more than one instance of the entity on the left, and more than one instance of an entity on the right
associates with the relationship then it is known as a many-to-many relationship.
• For example, Employee can assign by many projects and project can have many employees.
Steps for designing ER-model
• Step 5 − Draw the complete E-R diagram with all the attributes including primary key.
In the given ER diagram, LECTURE, STUDENT, SUBJECT and COURSE forms individual tables.
In the STUDENT entity, STUDENT_NAME and STUDENT_ID form the column of STUDENT table. Similarly, COURSE_NAME and COURSE_ID form the column of COURSE table and so
on.
In the given ER diagram, COURSE_ID, STUDENT_ID, SUBJECT_ID, and LECTURE_ID are the key attribute of the entity.
In the student table, a hobby is a multivalued attribute. So it is not possible to represent multiple values in a single column of STUDENT table. Hence we create a table STUD_HOBBY
with column name STUDENT_ID and HOBBY. Using both the column, we create a composite key.
In the given ER diagram, student address is a composite attribute. It contains CITY, PIN, DOOR#, STREET, and STATE. In the STUDENT table, these attributes can merge as an
individual column.
In the STUDENT table, Age is the derived attribute. It can be calculated at any point of time by calculating the difference between current date and Date of Birth.
Using these rules, you can convert the ER diagram to tables and columns and assign the mapping between the
tables. Table structure for the given ER diagram is as below:
END