0% found this document useful (0 votes)
6 views35 pages

EER Model

The document outlines a course on Database Systems focusing on the Enhanced Entity-Relationship (EER) model, covering topics such as database concepts, SQL, normalization, and transaction management. It details the EER model's advanced features like specialization, generalization, and subclass relationships, which enhance traditional ER models for complex applications. The course includes practical MySQL commands and a project component for hands-on experience.

Uploaded by

aditya sashank
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views35 pages

EER Model

The document outlines a course on Database Systems focusing on the Enhanced Entity-Relationship (EER) model, covering topics such as database concepts, SQL, normalization, and transaction management. It details the EER model's advanced features like specialization, generalization, and subclass relationships, which enhance traditional ER models for complex applications. The course includes practical MySQL commands and a project component for hands-on experience.

Uploaded by

aditya sashank
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

National Institute of Technology K arnataka S urath kal

Department of Information Technology

IT 252 DATABASE SYSTEMS

Enhanced (Extended)ER (EER) model

Dr. Jayashree T R
Course Outline
Course Plan: Theory:
Part A: Parallel Computer Architectures

Week 1: Introduction to to the course, highlighting the data and databases, and related basic
concepts. Advantages and need for a database system.

Week 2: Attributes, tuples, relational schema, conceptual model, introduction to SQL-DML, DDL,
creating relations/ tables, access and manipulate data.

Week 3,4: Data model, relational model, and SQL, relational data model and relational database
constraints, SQL data definition and data types, specifying constraints, basic retrieval queries, complex
quires, triggers, views, schema modification.

Week 5-6: ER model development, entity types/sets, attribute, relationship types/sets, simple employee
database conceptual design using ER concepts, ER to relational mapping algorithm, EER model.
Course Outline
Functional dependency definition, need of normalization, anomalies and
redundant information in tuples, normalization steps (INF, 2NF, 3NF),
Week 7,8 : BCNF, introduction to the higher normal forms.

Week 9: Procedural query languages: relational algebra and SQL-SELECT, PROJECT, RENAME, binary
and JOIN operations with examples.
Non-Procedural query languages: relational calculus, and SQL-tuple relational calculus, existential a
universal quantifier with examples.
Week 10,11 : Transaction management, schedule and serializability, concurrency control,2-phase lock,
recovery mechanism: undo/redo values.
Week 1 2 , 1 3 : Disk storage- basic file structures, ordered/unordered. binary search, hashing, indexing,
importance of indexes, primary and secondary indexing methods, clustered, B tree, B++ trees.
Week 1 4 : Current trends in database system, introduction to data warehousing, data mining.
Practical: MySQL commands
Project: Team of 2 or 3 members
Enhanced (Extended)ER (EER) model

ER Model: for traditional database applications, which include many data-processing


applications in business and industry.
EER Model: newer applications of database technology, such as databases for
engineering design and manufacturing (CAD/CAM), telecommunications, complex
software systems, and geographic information systems (GISs), AI applications, object
modeling in software engineering domains.
EER Model Concepts:
• Includes all modeling concepts of basic ER
• Additional concepts:
• subclasses/superclasses
Enhanced (Extended)ER model (EER) model

• specialization/generalization
• categories (UNION types)
• attribute and relationship inheritance
• some object-oriented concepts, such as inheritance
• knowledge Representation and Ontology Concepts

• Constraints on Specialization/Generalization

The additional EER concepts are used to model applications more completely and
more accurately.
Subclasses and Superclasses or supertype/subtype or class/subclass
relationship

• An entity type may have additional meaningful subgroupings of its entities.


• name of an entity type is used to represent both a type of entity and the entity set
or collection of entities of that type that exist in the database.
• Example: EMPLOYEE may be further grouped into:
• SECRETARY, ENGINEER, TECHNICIAN…..etc., Based on the EMPLOYEE’s
Job.
• MANAGER
• EMPLOYEEs who are managers (the role they play)
• SALARIED_EMPLOYEE, HOURLY_EMPLOYEE
• Based on the EMPLOYEE’s method of pay
Subclasses and Superclasses or supertype/subtype or class/subclass
relationship

• EER diagrams extend ER diagrams to represent these additional subgroupings,


called subclasses or subtypes.

• We call each of these subgroupings a subclass or subtype of the EMPLOYEE


entity type, and the EMPLOYEE entity type is called the superclass or
supertype for each of these subclasses.
Subclasses and Superclasses or supertype/subtype or class/subclass relationship
Specialization and Generalization:

Specialization: It’s a top-down approach where a higher-level entity is broken


down into more specialized entities.

e.g.: EMPLOYEE ----→ ENGINEER


MANAGER
TECHNICIAN
SALERIED EMPLOYEE

Generalization: It’s a bottom-up approach where multiple specific entities are


generalized into a single, more abstract entity.

e.g.: CAR
BUS ---------→VEHICLE
TRUCK
Instead, EER uses other clear
and standardized notations
(like circles, triangles, or lines)
to represent hierarchical
relationships like specialization
and generalization.
Predicate is a logical
condition or constraint.
We define the specialization
based on specific conditions or
predicates that apply to the
job_title attribute or to any
other attributes.
In attribute-defined
specialization, an entity is
divided into subtypes based on
the value of a particular
attribute.

e.g.: The Vehicle entity is divided


into different subtypes like Car,
Truck, and Motorcycle, based on
an attribute such as
vehicle_type.
❑ User defined Type of Specialization

• In user-defined specialization, the specialization of an entity into subtypes is based


on user-defined conditions rather than pre-defined attributes or logical
predicates.
• These conditions could be based on the user's specific needs, business rules, or
additional criteria that aren't necessarily represented as attributes in the
entity itself.
• e.g. : PERSON entity is specialized into STUDENT and FACULTY based on the
user's definition: enrollment in courses (for students) and holding a faculty
position (for faculty members).
We display an attribute-defined
specialization by placing the defining
attribute name next to the arc from
the circle to the superclass. Here,
Job_type is such an attribute.
Disjoint indicates that an entity can
belong to at most one subtype
within the hierarchy.

Overlap indicates that entity instance can


belong to multiple subtypes
simultaneously. (e.g., an employee can
be both a manager and a technician at
the same time).
EMPLOYEE can be either a MANAGER, or a
SECRETARY, or a TECHNICIAN, or an ENGINEER but
not more than one at the same time.
THANK YOU

You might also like