Module 1 DBMS
Module 1 DBMS
SYSTEMS
Module 1
What is a Database?
Prepared by Amrutha N
DATABASE
• Data mean known facts that can be recorded and that have implicit meaning.
Prepared by Amrutha N
For example, consider the names, telephone numbers, and addresses of the people you
know.
Nowadays, this data is typically stored in mobile phones, which have their own simple
database software.
This data can also be recorded in an indexed address book or stored on a hard drive, using
a personal computer and software such as Microsoft Excel. This collection of related data
with an implicit meaning is a database.
Prepared by Amrutha N
DATABASE
• Simple data processing without relationships: If the data does not have complex
relationships and does not require relational operations (joins, normalization), flat
files may be sufficient.
• Temporary or short-lived data: For applications where data is temporary and does not
need to be stored long-term, using a DBMS is not justified.
Prepared by Amrutha N
DATABASE
• For example, the list of names and addresses referred to earlier may consist of only a
few hundred records, each with a simple structure.
Prepared by Amrutha N
DATABASE
Prepared by Amrutha N
• An application program accesses the database by
sending queries or requests for data to the DBMS.
Prepared by Amrutha N
CHARACTERISTICS OF DATABASE APPROACH
Prepared by Amrutha N
CHARACTERISTICS OF DATABASE APPROACH
The main characteristics of the database approach versus the file-processing approach
are the following:
Prepared by Amrutha N
Self-describing nature of a database system
• A database system not only stores the actual data, but also stores information
about the data.
• Name → Varchar(50)
• Department → Varchar(30)
• Insulation means separating application programs from physical data storage details.
• In traditional file systems, if file structure changes the program must be modified.
Prepared by Amrutha N
Insulation between programs and data, and data abstraction
• Suppose we have a table containing fields: RollNo, Name, Department and Marks.
• In DBMS old programs that use RollNo, Name, Department and Marks will still work.
• No need to rewrite the program. The DBMS handles the internal changes.
Prepared by Amrutha N
Insulation between programs and data, and data abstraction
• Data abstraction means hiding complex details and showing only necessary information
to users.
Prepared by Amrutha N
Support of Multiple Views of the Data
• Database Management System allows different users to see different parts of the same
database according to their needs.
• In simple words, each user can have their own view of the data without affecting others.
Prepared by Amrutha N
Support of Multiple Views of the Data
Teacher View
Student View
• A multiuser DBMS, as its name implies, must allow multiple users to access the
database at the same time.
• The DBMS must include concurrency control software to ensure that several users
trying to update the same data.
Prepared by Amrutha N
Sharing of Data and Multiuser Transaction Processing
• In a Database Management System, every transaction must follow the ACID properties to
ensure data accuracy and reliability.
• Atomicity: A transaction must complete fully or not execute at all. If any part of the
transaction fails, the entire transaction is rolled back.
• Consistency: Ensures the database transforms from one valid state to another,
maintaining all predefined rules, constraints, and triggers.
• Durability: Once a transaction is committed, its changes are permanently saved in the
system, even in the event of a power loss or system crash. Prepared by Amrutha N
ACTORS ON THE SCENE
Prepared by Amrutha N
ACTORS ON THE SCENE
• In large organizations, many people are involved in the design, use, and maintenance of a
large database with hundreds or thousands of users.
Database Administrators
• In a database environment, the main resource is the database, while the secondary
resources include the DBMS and related software.
Prepared by Amrutha N
ACTORS ON THE SCENE
Database Administrators
• Maintaining good system performance and resolving issues such as slow response
time
Prepared by Amrutha N
ACTORS ON THE SCENE
Database Designers
• Database designers are responsible for determining what data should be stored in the
database and selecting suitable structures to organize and store that data efficiently.
• These activities are generally completed before the database is implemented and filled
with actual data.
• To create an effective design, database designers must communicate with all potential
users of the database to understand their data and processing requirements.
• Based on these discussions, they develop designs that satisfy user needs.
Prepared by Amrutha N
ACTORS ON THE SCENE
End Users
• End users are people who use the database for their work.
• Casual Users: Access the database occasionally and use query tools.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Controlling Redundancy
• In traditional file systems, the same data may be stored multiple times in different
files.
• This leads to data duplication, which wastes storage and may create inconsistencies.
• A Database Management System (DBMS) helps control and reduce this redundancy
by storing data in a centralized database and allowing multiple applications to access
the same data.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Controlling Redundancy
• Here, Department HOD (Dr. Ram) is repeated in every record. This is data
redundancy.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Controlling Redundancy
• Department table
• When many users share a large database, not everyone should be allowed to see or
change all the data.
• To control access, each user is given an account with a username and password.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Example
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Normally, these objects exist only while the program is running. When the program
stops, the objects and their data disappear.
• A DBMS provides persistent storage, which means the data stored in objects can be
saved permanently in the database.
• Even if the program is closed or the system is restarted, the data remains stored safely.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Providing Storage Structures and Search Techniques for Efficient Query Processing
• A DBMS stores a large amount of data. To make this process fast and efficient, the
DBMS provides:
• Storage Structures: These are special ways of organizing data in the database so that it
can be stored and accessed easily. Proper storage structures help the system store data
systematically.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• The backup and recovery subsystem of the DBMS is responsible for recovery.
• For example, if the computer system fails in the middle of a complex update
transaction, the recovery subsystem is responsible for making sure that the
database is restored to the state it was in before the transaction started executing
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• This means the system can show how different data items are connected to each other.
• In real-world situations, data is often related in many ways, and DBMS helps to
organize and manage these relationships properly.
Prepared by Amrutha N
ADVANTAGES OF USING THE DBMS APPROACH
• Representing Complex Relationships among Data
Prepared by Amrutha N
HISTORY OF DATABASE APPLICATIONS
Prepared by Amrutha N
HISTORY OF DATABASE APPLICATIONS
Prepared by Amrutha N
Extending database capabilities for new applications
• Script programming languages such as PHP and JavaScript allow generation of dynamic
Web pages that are partially generated from a database.
• Scientific Applications
• The above gives rise to new research and development in incorporating new data
types, complex data structures, new operations and storage and indexing schemes in
database systems.
Prepared by Amrutha N
DATA MODELS, SCHEMAS AND INSTANCES
Prepared by Amrutha N
DATA MODELS
• Most data models also include a set of basic operations for specifying retrievals
and updates on the database.
Prepared by Amrutha N
Categories of Data Models
• High-Level Data Models (Conceptual Data Models): These models describe data in a way
that is easy for users to understand. They focus on what data is stored and the
relationships between data, not how it is stored in the computer.
Prepared by Amrutha N
Categories of Data Models
• Low-Level Data Models (Physical Data Models): These models describe how data is
actually stored in the computer memory. Concepts provided by physical data models are
generally meant for computer specialists, not for end users.
• Representational (Logical) Data Models: These models describe data using structures that
the DBMS can implement, but they are still easy for users to understand.
• Hierarchical Data Model: This is a data model in which data is organized in a tree-like
structure using parent–child relationships.
• Object-Oriented Data Model: It represents data as objects that contain both data
(attributes) and operations (methods).
Prepared by Amrutha N
SCHEMA
• In a data model, it is important to distinguish between the description of the database and
the database itself.
• It describes how the data is organized and the relationships between tables.
• An instance refers to the actual data stored in the database at a particular moment.
Prepared by Amrutha N
• When we define a new database, we specify its database schema only to the DBMS. At this
point, the corresponding database state is the empty state with no data.
• We get the initial state of the database when the database is first populated or loaded with the
initial data.
• From then on, every time an update operation is applied to the database, we get another
database state.
• At any point in time, the database has a current state.
• The DBMS is partly responsible for ensuring that every state of the database is a valid state
that is, a state that satisfies the structure and constraints specified in the schema.
• The DBMS stores the descriptions of the schema constructs and constraints also called the
meta-data in the DBMS catalog.
• The schema is sometimes called the INTENSION, and a database state is called an
EXTENSION of the schema.
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE & DATA
INDEPENDENCE
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE
• The goal of the three-schema architecture is to separate the user applications from the
physical database.
• Internal level:
• The internal level has an internal schema, which describes the physical storage
structure of the database.
• The internal schema uses a physical data model and describes the complete
details of data storage and access paths for the database.
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE
• Conceptual level:
• The conceptual level has a conceptual schema, which describes the structure of
the whole database for a community of users.
• The conceptual schema hides the details of physical storage structures and
concentrates on describing entities, data types, relationships, user operations, and
constraints.
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE
• External level:
• The external level shows how different users see the database.
• Each external schema shows only the part of the database that a particular user
needs and hides the remaining data.
• This helps protect data and makes the database easier for users to understand.
Prepared by Amrutha N
THREE-SCHEMA ARCHITECTURE
• The DBMS must transform a request specified on an external schema into a request against
the conceptual schema, and then into a request on the internal schema for processing over the
stored database.
• If the request is a database retrieval, the data extracted from the stored database must be
reformatted to match the user’s external view.
• The processes of transforming requests and results between levels are called mappings.
Prepared by Amrutha N
Data Independence
• Data independence means the ability to change the database structure at one level
without affecting the next higher level.
Prepared by Amrutha N
Data Independence
• It is the ability to change the internal schema without affecting the conceptual
schema.
• This means changes in how data is stored do not affect the logical structure of the
database.
• Suppose the database administrator moves database from HDD to SSD. These
changes happen at the internal level, but the table structure remains the same.
Applications still use the same table.
Prepared by Amrutha N
Data Independence
• Logical data independence is the ability to change the conceptual schema without
affecting the external schema or user views.
• Suppose, If a user view only shows Roll_no and Name and we add a new column:
age, that view remains unchanged.
Prepared by Amrutha N
DATABASE LANGUAGES
Prepared by Amrutha N
DATABASE LANGUAGES
• Database languages are special languages used to define, manipulate, control, and query
data in a database.
Prepared by Amrutha N
DATABASE LANGUAGES
• In simple terms, DDL is used to design the structure of the database, not to
manipulate the data inside it.
• Common Commands
• DML is a set of SQL commands used to insert, update, delete, and retrieve data
from database tables.
• DML operations are performed on the data stored inside tables, not on the table
structure.
• Common Commands
• Common Commands
Prepared by Amrutha N
DATABASE LANGUAGES
• Common Commands
Prepared by Amrutha N
DATABASE LANGUAGES
• View definition language (VDL) is to specify user views and their mappings to the
conceptual schema.
Prepared by Amrutha N
DBMS INTERFACES
Prepared by Amrutha N
DATABASE INTERFACES
• Menu-based interfaces show users a list of options (menus) to help them make requests to
the database.
• Instead of remembering commands or the syntax of SQL, users can select options step by
step from the menu.
• Mobile apps allow users to access their data using smartphones or other mobile devices.
• Many organizations like banks, reservation services, and insurance companies provide
mobile apps for this purpose.
• Users log in using their account name and password, and the app shows a limited menu of
options to access their data. Prepared by Amrutha N
DATABASE INTERFACES
• Form based interface
• A forms-based interface shows users a form on the screen to enter data. Users can
fill in all the fields to add new data to the database.
• They can also search and retrieve matching data from the database.
• Users interact with the database through menus, icons, and graphical elements.
• Example: phpMyAdmin
Prepared by Amrutha N
DATABASE INTERFACES
• These interfaces accept requests written in English or some other language and
attempt to understand them.
Prepared by Amrutha N
DATABASE INTERFACES
• These interfaces are similar to web search engines like Google Search.
• Users can type words in natural language (such as English), and the system
searches for related documents or web pages.
• Search engines use indexes of words and ranking methods to find and display the
most relevant results first.
Prepared by Amrutha N
THE DATABASE SYSTEM ENVIRONMENT
Prepared by Amrutha N
DBMS COMPONENT MODULES
Prepared by Amrutha N
DBMS COMPONENT MODULES
Users of the Database System
• Casual Users
Prepared by Amrutha N
DBMS COMPONENT MODULES
• Application Programmers
• They write programs using languages like Java, C, or
Python with database commands.
• Precompiler separates database commands.
• DML Compiler compiles database manipulation
commands.
• Host Language Compiler compiles the rest of the
program.
• Output becomes compiled transactions.
Prepared by Amrutha N
DBMS COMPONENT MODULES
• Parametric Users
Prepared by Amrutha N
DBMS COMPONENT MODULES
Prepared by Amrutha N
DBMS COMPONENT MODULES
• Stored Database
Prepared by Amrutha N
DATABASE SYSTEM UTILITIES
• DBMSs have database utilities that help the DBA manage the database system.
• Loading:
• It is the process of transferring existing data files, such as text files or sequential
files, into a database.
• A loading utility is used for this purpose.
• The utility takes the source format of the data file and the target database
structure as input.
• It then automatically converts the data into the required format and stores it in the
database.
Prepared by Amrutha N
DATABASE SYSTEM UTILITIES
• Backup:
• Usually, the entire database is copied and stored on another storage device such as
a tape, disk, or other storage media.
• This backup copy is used to restore the database if a serious failure occurs, such
as a disk crash.
Prepared by Amrutha N
DATABASE SYSTEM UTILITIES
• This utility is used to rearrange or reorganize the database files into a better structure.
• It may also create new access paths (such as indexes) to make data retrieval faster and
improve overall database performance.
• Performance Monitoring:
• This utility checks how the database is being used and collects usage statistics.
• The DBA uses these statistics to decide how to improve database performance, such as
reorganizing files.
Prepared by Amrutha N
CENTRALIZED DBMS ARCHITECTURE
Prepared by Amrutha N
CENTRALIZED DBMS ARCHITECTURE
• Central control: The central server controls data storage, processing, and security.
• Multiple Users: Many users can access the database at the same time through terminals or
network connections.
• Easy management: Since everything is in one location, backup, security, and maintenance
are easier.
Prepared by Amrutha N
BASIC CLIENT/SERVER ARCHITECTURES
• In Client–Server Architecture, the database system is divided into two parts: client and
server.
• The server is the central computer that stores the database and DBMS and processes the
requests.
Prepared by Amrutha N
TWO-TIER CLIENT/SERVER ARCHITECTURES FOR DBMS
• In a two-tier client/server architecture, the user interface and application programs run on the
client computer.
• When the program needs to access the database, it connects to the DBMS located on the
server.
• After the connection is established, the client program can send queries and transaction
requests to the DBMS.
Prepared by Amrutha N
TWO-TIER CLIENT/SERVER ARCHITECTURES FOR DBMS
• Using ODBC, a client program can connect to multiple relational databases and send queries
to them.
• The server processes the query, and the results are sent back to the client, where they are
displayed to the user.
• For Java programs, another standard called Java Database Connectivity (JDBC) is used.
• JDBC allows Java applications to access one or more DBMSs through a standard interface.
Prepared by Amrutha N
THREE-TIER ARCHITECTURES FOR WEB APPLICATIONS
• These architectures are used to separate different parts of a web application into layers
(tiers).
Prepared by Amrutha N
THREE-TIER ARCHITECTURES FOR WEB APPLICATIONS
• Client Layer
Prepared by Amrutha N
CLASSIFICATION OF DATABASE MANAGEMENT
SYSTEM
Prepared by Amrutha N
CLASSIFICATION OF DATABASE MANAGEMENT SYSTEM
• This classification depends on how data is organized and stored in the database.
Prepared by Amrutha N
Classification Based on Data Model
Prepared by Amrutha N
Classification Based on Data Model
c) Hierarchical DBMS
• It stores data in a hierarchical structure similar to a tree, where each parent record can
have one or more child records, but each child record has only one parent.
d) Network DBMS
• In this model, records are connected with multiple relationships, allowing a child to
have more than one parent.
Prepared by Amrutha N
Based on number of users
a) Single-user systems
• It support only one user at a time and are mostly used with PCs.
b) Multi-user systems
Prepared by Amrutha N
Based on sites
a) Centralized DBMS
• Easier to manage but if the server fails, the whole system stops.
b) Distributed DBMS
• Each site can store part of the database or a copy of the database.
Prepared by Amrutha N
CONCEPTUAL DATA MODELLING
Prepared by Amrutha N
CONCEPTUAL DATA MODELLING
• Conceptual modeling is the initial stage of database design in which the main entities,
attributes, and relationships of the system are identified and represented in a model.
Prepared by Amrutha N
USING HIGH-LEVEL CONCEPTUAL DATA MODELS FOR
DATABASE DESIGN
Prepared by Amrutha N
• Functional requirements
• Data requirements
Prepared by Amrutha N
• Logical Design (Data Model Mapping)
• Physical Design
• DBMS-Independent
• DBMS-Specific
Prepared by Amrutha N
ER DIAGRAM
• It helps designers understand how data is organized and how different data items are related
before creating the database tables.
Prepared by Amrutha N
Entity
• An entity is any real-world object or concept about which data is stored in the database.
Prepared by Amrutha N
Strong & Weak Entity Type
Strong entity type
• A strong entity type is an entity that has its own key attribute to uniquely identify each entity.
• Example: EMPLOYEE with key attribute Employee_ID. So, each employee can be identified
independently.
• It is represented by rectangle.
• Weak entity
• A weak entity type does not have its own key attribute to uniquely identify its entities.
• Instead, it is identified using the key of another entity (owner entity) & its own partial key
attribute.
• Because of this, a weak entity depends on another entity for its existence.
Prepared by Amrutha N
Attributes
• Each entity has attributes, the particular properties that describe it.
• Every ellipse represents one attribute and is directly connected to its entity (rectangle).
• For example, a STUDENT entity may be described by the student’s name, Roll_No and
BirthDate.
Prepared by Amrutha N
Types of Attributes
• Composite versus Simple (Atomic) Attributes:
• Composite attributes can be divided into smaller subparts, which represent more
basic attributes with independent meanings.
• Composite attributes can form a hierarchy; for example, Street_address can be further
subdivided into three simple component attributes: Number, Street, and
Apartment_number,
Prepared by Amrutha N
Types of Attributes
• Composite versus Simple (Atomic) Attributes:
Prepared by Amrutha N
Types of Attributes
• Composite versus Simple (Atomic) Attributes:
• Attributes that are not divisible are called simple or atomic attributes.
Prepared by Amrutha N
Types of Attributes
• Single-Valued versus Multivalued Attributes
• A single-valued attribute is an attribute that has only one value for each entity in the
database.
• Age of a person
• A multivalued attribute is an attribute that can have multiple values for a single entity.
Prepared by Amrutha N
Types of Attributes
• Stored versus derived attributes:
• Date_of_birth
• Marks
• Age
• Total_marks
Prepared by Amrutha N
Types of Attributes
• Stored versus derived attributes:
Prepared by Amrutha N
Types of Attributes
• NULL Values
• In some cases, a particular entity may not have an applicable value for an attribute.
Prepared by Amrutha N
Types of Attributes
• Complex Attributes
• A complex attribute is an attribute that contains multiple components and may also
have multiple values for each component.
• Address can be broken into sub-attributes street, city, state, pin code.
• If an employee has more than one address (e.g., permanent and temporary address),
then Address becomes multivalued.
Prepared by Amrutha N
Key Attributes
• A Key Attribute is an attribute whose value is unique for every entity in the entity set.
Prepared by Amrutha N
Entity Types, Entity Sets
• Entity Type
• An entity type is a collection of entities that have the same set of attributes.
• Entity Sets:
• An entity set is a group of entities that belong to the same entity type.
• Characteristics
Prepared by Amrutha N
KEYS
• It is used to uniquely identify any record or row of data from the table.
• For example: In Student table, ID is used as a key because it is unique for each student.
Prepared by Amrutha N
Types of keys
Primary key
• It is the first key which is used to identify one and only one instance of an entity uniquely.
• In the EMPLOYEE table, ID can be primary key since it is unique for each employee.
• For each entity, selection of the primary key is based on requirement and developers.
Prepared by Amrutha N
Types of keys
Candidate key
• A candidate key is an attribute or set of an attribute which can uniquely identify a tuple.
• The remaining attributes except for primary key are considered as a candidate key.
For example: In the EMPLOYEE table, id is best suited for the primary key. Rest of the
attributes like SSN, Passport_Number, and License_Number, etc. are considered as a candidate
key.
Prepared by Amrutha N
Types of keys
Foreign key
• Foreign keys are the column of the table which is used to point to the primary key of
another table.
• That's why we link these two tables through the primary key of one table.
Prepared by Amrutha N
Types of keys
Foreign key
• We add the primary key of the DEPARTMENT table, Department_Id as a new attribute in
the EMPLOYEE table.
• Now in the EMPLOYEE table, Department_Id is the foreign key, and both the tables are
related.
Prepared by Amrutha N
ROLE NAMES
• The role name signifies the role that a participating entity from the entity type plays in each
relationship instance.
• For example, in the WORKS_FOR relationship type, EMPLOYEE plays the role of employee
and DEPARTMENT plays the role of department.
Prepared by Amrutha N
Relationship Types, Relationship Sets, and Structural Constraint
• Relationship
• Relationship shows how entities are connected or related to each other in a database.
• Relationship between two entities of the same type is called recursive relationship.
Prepared by Amrutha N
Relationship Types
• Cardinality is the number of instance of an entity from a relation that can be associated with
the relation.
• Relationship Types
Prepared by Amrutha N
Relationship Types
• When only one instance of an entity is associated with the relationship, it is marked as
'1:1’.
• It is used to create a relationship between two tables in which a single row of the first
table can only be related to one and only one record of a second table.
In a university, each department has only one head of the department. And one HoD can
take only one department. This shows a one-to-one (1:1) relationship between the
department and the person as a head.
Prepared by Amrutha N
Relationship Types
• When more than one instance of an entity is associated with a relationship, it is marked
as '1:N’.
A department that has many students. Each student is assigned to one department.
Prepared by Amrutha N
Relationship Types
• When more than one instance of entity is associated with the relationship, it is marked as
‘N:1’.
Many students can belong to one department. But each student belongs to only one
c
department.
Prepared by Amrutha N
Relationship Types
• More than one instance of an entity on the left and more than one instance of an
entity on the right can be associated with the relationship.
There are many employees involved in each project, and every employee can involve
in more than one project.
Prepared by Amrutha N
• Example:
Prepared by Amrutha N
Relationship Degree
• Unary Relationship
Prepared by Amrutha N
Relationship Degree
• Binary Relationship
Prepared by Amrutha N
Relationship Degree
• Ternary Relationship
• Ternary relationship set is a relationship set where three entity sets participate in a
relationship set.
Prepared by Amrutha N
Prepared by Amrutha N
• Consider a system for managing a Software Development Company with the following
requirements:
Prepared by Amrutha N
STRUCTURAL CONSTRAINTS OF RELATIONSHIPS IN ER
MODEL
• To understand Structural Constraints, we must take a look at Cardinality Ratios and
Participation Constraints.
• There are numbers (represented by M and N) written above the lines which connect
relationships and entities.
Prepared by Amrutha N
STRUCTURAL CONSTRAINTS OF RELATIONSHIPS IN ER
MODEL
• These are called cardinality ratios.
• These represent the maximum number of entities that can be associated with each other
through relationship, R.
Types of Cardinality
Prepared by Amrutha N
STRUCTURAL CONSTRAINTS OF RELATIONSHIPS IN ER
MODEL
• These are called cardinality ratios.
• These represent the maximum number of entities that can be associated with each other
through relationship, R.
Types of Cardinality
Prepared by Amrutha N
Participation Constraints
• Participation Constraints tell us that that the participation in a relationship can either be total
or partial.
Prepared by Amrutha N
Participation Constraints
Total Participation
Partial participation
• However, when all entities in the given entity set do not participate in a relation, it is
called Partial Participation.
Prepared by Amrutha N
Generalization
• Generalization is like a bottom-up approach in which two or more entities of lower level
combine to form a higher level entity if they have some attributes in common.
• In generalization, an entity of a higher level can also combine with the entities of the lower
level to form a further higher level entity.
• Generalization is more like subclass and super class system, but the only difference is the
approach.
• In generalization, entities are combined to form a more generalized entity, i.e., subclasses are
combined to make a super class.
Prepared by Amrutha N
Generalization
• For example, Faculty and Student entities can be generalized and create a higher level entity
Person.
Prepared by Amrutha N
Specialization
• In specialization, one higher level entity can be broken down into two lower level entities.
• Specialization is used to identify the subset of an entity set that shares some distinguishing
characteristics.
• Normally, the super class is defined first, the subclass and its related attributes are defined
next, and relationship set are then added.
Prepared by Amrutha N
Specialization
Prepared by Amrutha N