Introduction to Database Management System -DBMS
In today’s digital world, almost every application—from mobile banking
and e-commerce to university portals and hospital systems—depends on
the efficient storage, organization, and retrieval of data. As the amount of
information generated by individuals and organizations continues to grow,
managing this data in a structured and meaningful way becomes
essential. This is where database systems play a central role.
A database can be thought of as a well-organized collection of related
data, designed so that it can be easily accessed, managed, and updated.
But the database itself is only one component. To manage it effectively,
we rely on a specialized software package known as a Database
Management System (DBMS). A DBMS provides a systematic and
automated way to store large volumes of data, enforce rules for
consistency and correctness, protect data from unauthorized access, and
allow multiple users to work with the data simultaneously without
conflicts.
A database typically has three key characteristics:
1. Represents a real-world domain (often called
the miniworld or universe of discourse). Any change in this real-
world environment should be reflected promptly in the database.
2. Maintains logical coherence—its data elements are related and
collectively carry meaning.
3. Serves a specific purpose with clearly identified users and
applications.
Because databases must remain accurate and up to date, events such as
business transactions or personal changes (like an employee having a new
child) must be recorded in the database as soon as they occur.
A database may be managed manually—as in traditional library card
catalogs—or electronically. Modern computerized databases can be built
using custom application programs or with the help of a Database
Management System (DBMS).
A DBMS is a software system that enables users to define, create,
manipulate, and share a database. Its major responsibilities include:
Defining data types, structures, and constraints (metadata stored
in a catalog or dictionary)
Constructing the database by placing data on storage media
Manipulating data through queries, updates, and report generation
Supporting multi-user access so many applications and users
can work with the data simultaneously
Applications interact with the DBMS through queries or transactions that
request data retrieval or modification. Beyond basic operations, a DBMS
must also ensure:
Protection against system failures and unauthorized access
Long-term maintenance, because large databases often remain
operational for many years
While it is possible to build a custom system to manage a specific
application’s data needs, general-purpose DBMSs are widely used because
they provide robust, flexible, and sophisticated tools. These systems are
complex software products designed to support large and evolving
datasets.
Together, the database and the DBMS software form what is known as
a database system.
Example of a Database
UNIVERSITY Database
To illustrate basic database concepts, consider a
simple UNIVERSITY database that stores information about students,
courses, sections, grades, and prerequisites. The database consists of five
files (or record types), each holding data of a particular kind:
STUDENT
COURSE
SECTION
GRADE_REPORT
PREREQUISITE
Each file contains multiple records of similar structure. Below are the
record formats and sample entries.
Record Structure and Data Types
To define this database, the structure of each record must be specified.
For example:
A STUDENT record contains:
Name (string), Student_number (integer), Class (coded numeric
level), Major (string)
A COURSE record includes:
Course_name, Course_number, Credit_hours, Department
The GRADE_REPORT record contains:
Grade, which may be a single character from {A, B, C, D, F, I}
Coding may be used, such as:
Class:
o 1 = Freshman
o 2 = Sophomore
o 3 = Junior
o 4 = Senior
o 5 = Graduate student
Relationships Among Records
The files are interconnected. For example:
The STUDENT record for Smith (17) is linked to several
GRADE_REPORT entries showing his grades.
PREREQUISITE records connect one COURSE to another COURSE
that must be completed beforehand.
Medium to large databases often include many such record types and
relationships.
Sample Database Operations
Queries
Examples of questions a user may ask:
Retrieve Smith’s full transcript (all courses and grades).
List all students who took the Database course in Fall 2008 and
show their grades.
Retrieve all prerequisites for the Database course.
Updates
Examples of modifications:
Change Smith’s Class from 1 to 2 (freshman → sophomore).
Add a new section of the Database course for the current
semester.
Enter a grade of A for Smith in last semester’s Database section.
Such operations must be expressed precisely in the DBMS’s query
language.
Database in the Context of an Information System
A university’s information system—handled by the IT department—
includes hardware, software, storage, applications, and databases.
Designing a database follows several phases:
1. Requirements Analysis
o Collect and document all data requirements.
2. Conceptual Design
o Create a high-level data model (often using the Entity-
Relationship (ER) model).
3. Logical Design
o Map the conceptual schema to a DBMS-supported data model
(usually relational).
4. Physical Design
o Specify storage structures, indexing, and access paths.
Once implemented, the database is populated with data and maintained
continuously to reflect changes in the real-world miniworld.
October 19, 2025
1. Self-Describing Nature of the Database System
Database System
A DBMS stores both:
o The actual data, and
o A complete description of the data (metadata) in a catalog.
Metadata includes structure of files, types of data items, constraints,
etc.
DBMS software reads definitions from the catalog, so it can work
with any database.
Traditional File Processing
Data description is embedded inside application programs.
Each program contains its own file structure definitions (e.g., C++
structs).
Programs are tied to a single specific file format and cannot work
with other data files.
No central catalog or metadata repository.
2. Insulation Between Programs and Data (Program-Data
Independence)
Database System
Data structure is separated from application programs.
If the structure changes (e.g., adding Birth_date to STUDENT), only
the catalog changes.
Programs continue to work without modification.
Achieved through data abstraction provided by the data model.
Traditional File Processing
File structure is hard-coded in each program.
Any change in file format requires changing all programs that
access that file.
No mechanism for program-data independence.
Details like byte positions and record formats are visible to
programs.
3. Support for Multiple Views
Database System
DBMS can define multiple views for different users.
A view:
o Can be a subset of the data, or
o Can be virtual data derived from stored files.
Users need not know whether data is stored or computed.
Traditional File Processing
Each application defines its own files and programs, so views are
limited.
No built-in way to provide different external views of the same data.
If two users need different views, they usually maintain separate
files.
4. Data Sharing and Multiuser Transaction Processing
Database System
Multiple users can access and update the
database simultaneously.
Requires:
o Concurrency control,
o Transaction management, and
o Enforcement of ACID properties
(especially isolation and atomicity).
Supports Online Transaction Processing (OLTP) environments.
Ensures correctness (e.g., preventing two agents from booking the
same seat).
Traditional File Processing
Data is usually isolated in separate files for each application.
Multiuser access is difficult and often requires custom code.
No automatic concurrency control or transaction mechanism.
Risk of inconsistent or incorrect updates when many users access
files simultaneously.
Summary Table
Database System Traditional File
Feature
(DBMS) Processing
Metadata Stored in catalog; self- Inside program code; no
storage describing catalog
Program-data Yes; programs need not No; programs must change
independence change if structure if file structure changes
Database System Traditional File
Feature
(DBMS) Processing
changes
High; internal details Low; programs deal with
Data abstraction
hidden record formats directly
Not supported or requires
Multiple views Supported
separate files/programs
Centralized, shared Separate files for each
Data sharing
database application
Concurrency Built-in (transactions, Must be manually
control isolation) programmed; often absent
High (duplicate data across
Redundancy Reduced
apps)
Low; separate independent
Integration High; one unified database
files
Advantages of Using the DBMS Approach
A Database Management System (DBMS) provides several advantages
over traditional file-processing systems. These advantages help
organizations manage large, shared, multiuser databases efficiently
and securely.
1. Control of Data Redundancy
Traditional file systems store the same data in multiple files, leading
to:
o Duplication of effort
o Wasted storage space
o Data inconsistency
A DBMS integrates data into a single database, storing each
logical data item once (normalization).
Controlled redundancy may be allowed for performance
(denormalization), but the DBMS ensures consistency using
constraints and checks.
Result: Reduced inconsistency and efficient storage utilization.
2. Restriction of Unauthorized Access
Not all users should access all data.
A DBMS provides:
o User accounts and passwords
o Authorization control (read, update, insert, delete)
o Role-based access for different user groups
Sensitive data (e.g., salaries) can be protected.
Access can be limited to predefined applications.
Result: Improved data security and privacy.
3. Persistent Storage for Program Objects
DBMSs allow program objects and complex data structures to
be stored permanently.
Object-oriented DBMSs directly support programming language
objects (C++, Java).
Eliminates the need for manual file conversions.
Solves the impedance mismatch problem between databases
and programming languages.
Result: Seamless persistence of complex data.
4. Efficient Query Processing
DBMSs provide:
o Indexes (tree-based, hash-based)
o Specialized storage structures
o Buffering and caching mechanisms
Query processing and optimization modules choose efficient
execution plans.
Physical database design and tuning are supported.
Result: Faster data retrieval and updates.
5. Backup and Recovery
DBMSs support:
o Automatic recovery from system crashes
o Transaction rollback
o Periodic disk backups
Ensures database consistency even after failures.
Result: High reliability and data protection.
6. Support for Multiple User Interfaces
DBMSs support diverse users through:
o Query languages (SQL)
o Programming interfaces
o Forms-based interfaces
o Menu-driven and natural language interfaces
o Web and mobile applications
Result: Usability for users with varying technical skills.
7. Representation of Complex Relationships
DBMSs can represent:
o One-to-one, one-to-many, and many-to-many relationships
o Complex interconnections among data
Easy retrieval and update of related data.
Result: Accurate modeling of real-world applications.
8. Enforcement of Integrity Constraints
DBMSs enforce:
o Domain constraints (data types)
o Key constraints (uniqueness)
o Referential integrity constraints
o Business rules
Some errors can be automatically prevented.
Result: Improved data correctness and consistency.
9. Support for Inferencing, Rules, and Triggers
DBMSs support:
o Deductive rules for deriving new information
o Triggers that automatically execute actions on updates
o Stored procedures
o Active database functionality
Result: Intelligent and automated database behavior.
10. Additional Organizational Benefits
a) Enforcing Standards
Centralized control allows uniform naming, formats, and
conventions.
b) Reduced Application Development Time
New applications can be developed quickly using DBMS facilities.
Development time is typically 1/6 to 1/4 of that using file systems.
c) Flexibility
Schema changes can be made with minimal impact on existing
applications.
d) Availability of Up-to-Date Information
Updates by one user are immediately visible to others.
Essential for real-time transaction systems.
e) Economies of Scale
Shared infrastructure reduces duplication of hardware, software, and
personnel effort.
Overall Summary
The DBMS approach provides data integration, security, efficiency,
reliability, flexibility, and scalability, making it superior to traditional
file-processing systems for modern multiuser applications.