21CSC205P Database Management
Systems
Project Report
Register No. : RA2211003050027
Name of the Student : N.BHARATH KUMAR
Semester : IV
Programme : B.Tech. CSE
Academic Year : 2023-2024
SRM INSTITUTE OF SCIENCE AND TECHNOLOGY
TIRUCHIRAPPALLI
TIRUCHIRAPPALLI COLLEGE OF ENGINEERING AND TECHNOLOGY
REGISTER NO.
BONAFIDE CERTIFICATE
Certified as the bonafide record of work done by
, Register No.
of (Semester/Year),
B.Tech. Programme in the
project-based course 21CSC205P, Database Management Systems at SRM
Institute of Science and Technology, Tiruchirappalli Campus during the Academic
Year 2023-2024.
Faculty In-charge Head of the Department
Submitted for the End Semester Examination held on
Examiner-1 Examiner-2
SRM Institute of Science and Technology
Faculty of Engineering and Technology
School of Computing
Department of Computational Intelligence
VISION AND MISSION OF THE DEPARTMENT
Vision
To become a world-class department in imparting high-quality knowledge and providing students
with a unique learning and research experience in Computer Science and Engineering.
Mission
1. To impart knowledge in cutting edge technologies in part with industrial standards.
2. To collaborate with renowned academic institutions in research and development.
3. To instill societal and ethical responsibilities in all professional activities.
Program Educational Objectives (PEO)
PEO - 1 Graduates will be able to perform in technical/managerial roles ranging from design,
development, problem solving to production support in software industries and R&D sectors
PEO - 2 Graduates will be able to successfully pursue higher education in reputed institutions.
PEO - 3 Graduates will have the ability to adapt, contribute and innovate new technologies and
systems in the key domains of Computer Science and Engineering.
PEO - 4 Graduates will be ethically and socially responsible solution providers and
entrepreneurs in Computer Science and other engineering disciplines.
PEO - 5 Graduates will possess the additional skills in core computer science discipline with
knowledge of Hardware, Software, Programming, Logic & Reasoning.
Mission of the Department to Program Educational Objectives (PEO) Mapping
H – High correlation, M – Medium Correlation, L – Low Correlation
Program Outcomes as defined by NBA (PO)
Engineering Graduates will be able to:
1. Engineering knowledge: Apply the knowledge of mathematics, science, engineering
fundamentals, and an engineering specialization to the solution of complex engineering
problems.
2. Problem analysis: Identify, formulate, review research literature, and analyze complex
engineering problems reaching substantiated conclusions using first principles of
mathematics, natural sciences, and engineering sciences.
3. Design/development of solutions: Design solutions for complex engineering problems
and design system components or processes that meet the specified needs with appropriate
consideration for the public health and safety, and the cultural, societal, and environmental
considerations.
4. Conduct investigations of complex problems: Use research-based knowledge and
research methods including design of experiments, analysis and interpretation of data, and
synthesis of the information to provide valid conclusions.
5. Modern tool usage: Create, select, and apply appropriate techniques, resources, and
modern engineering and IT tools including prediction and modeling to complex engineering
activities with an understanding of the limitations.
6. The engineer and society: Apply reasoning informed by the contextual knowledge to
assess societal, health, safety, legal and cultural issues and the consequent responsibilities
relevant to the professional engineering practice.
7. Environment and sustainability: Understand the impact of the professional engineering
solutions in societal and environmental contexts, and demonstrate the knowledge of, and
need for sustainable development.
8. Ethics: Apply ethical principles and commit to professional ethics and responsibilities and
norms of the engineering practice.
9. Individual and team work: Function effectively as an individual, and as a member or
leader in diverse teams, and in multidisciplinary settings.
10. Communication: Communicate effectively on complex engineering activities with the
engineering community and with society at large, such as, being able to comprehend and
write effective reports and design documentation, make effective presentations, and give and
receive clear instructions.
11. Project management and finance: Demonstrate knowledge and understanding of the
engineering and management principles and apply these to one’s own work, as a member and
leader in a team, to manage projects and in multidisciplinary environments.
12. Life-long learning: Recognize the need for, and have the preparation and ability to
engage in independent and life-long learning in the broadest context of technological change.
PSO – Program Specific Outcomes (PSO)
Mapping Program Educational Objectives (PEO) to Program Learning Outcomes (PLO)
H – High correlation, M – Medium Correlation, L – Low Correlation
COURSE DESIGN
Course Learning At the end of this course, learners will be able to:
Outcomes (CLO):
CO – 1 Acquire knowledge on DBMS architecture and languages
CO – 2 Acquire knowledge on Relational languages and design a database
CO – 3 Implement the Database structure with SQL
CO – 4 Removal of anomalies using Normalization concepts
CO – 5 Visualizing storage structure, handling concurrency, Failure and
recovery principles, NoSQL concept
CLO-PO Mapping
CLO Program Outcomes (PO)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Engineering Knowledge
Design & Development
Project Mgt. & Finance
Modern Tool Usage
Life Long Learning
Team Work
Society & Culture
Problem Analysis
Analysis, Design,
Communication
Environment &
Sustainability
Research
PSO – 3
PSO - 1
PSO - 2
Individual &
Ethics
CO1 - 2 - - - - - - - - - - 2 1 -
CO2 1 2 - - - - - - - - - - 2 1 -
CO3 1 - 2 - - - - - - - - - 2 1 -
CO4 1 - - - - - - - - - - - 2 1 -
CO5 1 2 - - - - - - - - - - 2 1 -
Report Evaluation:
Test
Date Artifacts Total
Components Mark Split-up
Marks
Marks to be evaluated based on
1 (a) 23.01.2024 Project Title selection, presentation
Abstract Project title – 2 Marks
04 Presentation – 2 Marks
Problem understanding, Marks to be evaluated based on
Identification of Entity and presentation and demo
07-02-2024 Problem Identification – 1 Marks
1 (b) Relationships,
Construction of DB using Presentation – 2 Marks
ER Model for their project 06 Demo - 2 Marks
Viva - 1 Marks
Marks to be evaluated based on demo
Design of Relational
and viva voce
Schemas, Creation of
2 28-02-2024 Demo - 4 Marks
Database and their Tables
10 Viva voce – 3 Marks
for their project
Report - 3 Marks
Marks to be evaluated based on demo
Writing the complex queries
and viva voce
based on the concepts of
27-03-2024 Demo - 4 Marks
3 constraints, sets, joins,
10 Viva - 3 Marks
views, Triggers and
Report -3 Marks
Cursors
Marks to be evaluated based on demo
Analyzing the pitfalls, and viva voce
27-03-2024 identifying the dependencies Demo - 4 Marks
4 and applying normalizations 10 Viva - 3 Marks
Report - 3 Marks
Marks to be evaluated based on demo
Implementation of and viva voce
27-03-2024 concurrency control and Demo - 4 Marks
5
recovery mechanisms. 10 Viva - 3 Marks
Report - 3 Marks
Marks to be evaluated based on
presentation and demo
Module Description and Final Presentation - 2
6 15-04-2024
Functionalities 10 Demo - 2 Marks
Viva - 3 Marks
Report - 3 Marks
Marks to be evaluated based on
Database Connectivity and presentation and demo
Final Presentation - 2
7 15-04-2024 Embedded SQL 10
Demo - 2 Marks
operations Viva - 3 Marks
Report - 3 Marks
Marks to be evaluated based on
PL/SQL procedures to presentation and demo
Final Presentation - 2
8 29-04-2024 Operate on the 10
Demo - 2 Marks
database of your Viva - 3 Marks
project Report - 3 Marks
Marks to be evaluated based on
presentation and demo
Final Presentation - 2
9 29-04-2024 Front End Design 10
Demo - 2 Marks
Viva - 3 Marks
Report - 3 Marks
Marks to be evaluated based on
presentation and demo
Report Generation
Final Presentation - 2
10 07-05-2024 using Crystal 10
Demo - 2 Marks
Reports/Report Viva - 3 Marks
Generation Tool Report - 3 Marks
LABORATORY EXPERIMENTS MAPPED WITH CLO, PO, PSO
Sl. CLO PO / PSO
Title of the Experiments
No. Mapping Mapping
1 (a) Project Title selection, Abstract 1 2
(b) Problem understanding, Identification of
Entity and Relationships, Construction of DB
using ER
Model for your project
2 Design of Relational Schemas, Creation of Database 1,2 1,2
and Tables for your project
3 SQL Queries based on the concepts of 3 1,3
constraints, sets, joins
4 Applying Normalization for your project 4 1
5 Concurrency control and Recovery mechanisms for 5 1,2
your project
6 Module Description and Functionalities 1,2 1,2
7 Database Connectivity and Embedded 1,2 1,2
SQLoperations
8 PL/SQL procedures to Operate on the database of 2,3 1,2,3
your project
9 Front End Design, Sample Code for each 5 1,2
module, Screen Shots for each module
10 Report Generation using Crystal 5 1,2
Reports/Report Generation Tool
INDEX
Expt. Date of Name of the Experiment Page Marks Signature
No. Experiment No. (50) of Faculty
1 07-02-2024 (a) Project Title selection, Abstract
(b) Problem understanding,
Identification of Entity and
Relationships, Construction of DB using
ER Model for your project
2 28-02-2024 Design of Relational Schemas, Creation
of Database and Tables for your project
3 27-03-2024 SQL Queries based on the concepts
of constraints, sets, joins
4 27-03-2024 Applying Normalization for your project
5 27-03-2024 Concurrency control and
Recovery mechanisms for your
project
6 15-04-2024 Module Description and Functionalities
7 15-04-2024 Database Connectivity and Embedded
SQL operations
8 29-04-2024 PL/SQL procedures to Operate on
the database of your project
9 29-04-2024 Front End Design, Sample Code
foreach module, Screen Shots for
eachmodule
10 07-05-2024 Report Generation using Crystal
Reports/Report Generation Tool
11 07-05-2024 Online Course Completion Certificate
a)ABSTRACT:
Project Title : ONLINE HOSPITAL MANAGEMENT SYSTEM
Hospital Management System is an organized computerized system designed and
programmed to deal with day to day operations and management of the hospital
activities. The program can look after inpatients, outpatients, records, database
treatments, status illness, billings in the pharmacy and labs. It also maintains
hospital
information such as ward id, doctors in charge and department administering. The
major problem for the patient nowadays to get report after consultation , many
hospital managing reports in their system but it's not available to the patient when
he /she is outside. In this project we are going to provide the extra facility to store
There port in the database and make available from anywhere in the world.
SCOPE OF THE PROJECT:
1) Information about Patients is done by just writing the Patients name, age and
gender. Whenever the Patient comes up his information is stored freshly.
2) Bills are generated by recording price for each facility provided to Patient on a
separate sheet and at last they all are summed up.
3) Diagnosis information to patients is generally recorded on the document, which
contains Patient information. It is destroyed after some time period to decrease
the paper load in the office.
4) Immunization records of children are maintained in pre-formatted sheets, which
are kept in a file.
5) Information about various diseases is not kept as any document. Doctors
themselves do this job by remembering various medicines.
b)problem understanding:
Lack of immediate retrievals: -
The information is very difficult to retrieve and to find particular information like-
E.g. - To find out about the patient’s history, the user has to go through various
registers. This results in in convenience and wastage of time.
Lack of immediate information storage: -
The information generated by various transactions takes time and efforts to be stored
at right place.
Lack of prompt updating: -
Various changes to information like patient details or immunization details of child
are difficult to make as paper work is involved.
Error prone manual calculation: -
Manual calculations are error prone and take a lot of time this may result in incorrect
information. For example calculation of patient’s bill based on various treatments.
Preparation of accurate and prompt reports: -
This becomes a difficult task as information is difficult to collect from various
register.
IDENTIFICATION OF ER DIAGRAM:
DOCTOR
NURSE
PATIENT
RECEPTIONIST
ROOM
MEDICINE
EMPLOYEE
CONSTRUCT THE DB USING ER MODEL:
2) DESIGN OF RELATION SCHEMA:
CREATION OF DB AND TABLE :
3) SQL QUERIES BASED ON THE CONCEPT:
4)APPLYING NORMALIZATION FOR YOUR PROJECT:
Implementing normalization in a hospital data management system can
enhance data integrity, reduce redundancy, and improve efficiency. Here's a
simplified guide on how to apply normalization:
Understand your Data Structure: Before normalization, analyze the existing data
structure. Identify entities (such as patients, doctors, treatments), attributes (like
patient name, doctor specialty), and relationships (such as patient-doctor
association).
Choose the Normal Form: Determine the appropriate normal form for your system.
Commonly used normal forms are 1NF, 2NF, 3NF, BCNF, and 4NF. Each normal
form has specific rules to eliminate data redundancy and dependency issues.
First Normal Form (1NF): Ensure that each attribute contains atomic values and
there are no repeating groups. For instance, a patient record should not have multiple
values for a single attribute like "treatments."
Second Normal Form (2NF): Achieve 1NF and ensure that non-key attributes are
fully functional dependent on the primary key. Break down composite attributes and
move them to separate tables if needed.
Third Normal Form (3NF): Achieve 2NF and ensure that there are no transitive
dependencies. Attributes that depend on non-primary key attributes should be moved
to separate tables.
Boyce-Codd Normal Form (BCNF): Achieve 3NF and ensure that every
determinant is a candidate key. If any determinant is not a candidate key, decompose
the table further.
Fourth Normal Form (4NF): If needed, apply 4NF to eliminate multi-valued
dependencies.
Create Relational Schema: Based on the normalized structure, create a relational
schema with tables, primary keys, foreign keys, and relationships.
Data Migration: Migrate the existing data into the normalized tables. This might
involve breaking down existing tables, rearranging data, and establishing
relationships between tables.
Implement Data Integrity Constraints: Add constraints like primary key
constraints, foreign key constraints, unique constraints, and check constraints to
maintain data integrity
Testing: Thoroughly test the system after normalization to ensure that it behaves as
expected. Verify data integrity, query performance, and system functionality.
Maintenance: Regularly maintain the database structure, review for any anomalies,
and make adjustments as necessary to accommodate changes in the hospital's data
management requirements.
Remember, the normalization process should be iterative and tailored to the specific
needs of your hospital data management system. It's crucial to strike a balance
between normalization and system performance.
5)Concurrency control and Recovery mechanisms for your
project:
Concurrency Control:
Lock-Based Concurrency Control:
Types of Locks: Use various lock types such as shared locks (read locks) and
exclusive locks (write locks) to control access to data.
Granularity: Choose appropriate granularity for locks, like table-level locks, page-
level locks, or even finer-grained row-level locks.
Lock Manager: Implement a lock manager responsible for granting and releasing
locks while ensuring concurrency and preventing deadlocks.
Deadlock Detection and Resolution: Employ deadlock detection mechanisms to
identify deadlocks and apply strategies like deadlock prevention, detection, and
resolution.
Timestamp-Based Concurrency Control:
Timestamp Ordering: Assign unique timestamps to transactions and order
transactions based on these timestamps to control concurrency.
Timestamp-Based Validation: Use timestamps to validate read and write operations
to ensure consistency and avoid conflicts.
Multi-Version Concurrency Control (MVCC):
Versioning: Maintain multiple versions of data items to allow concurrent read and
write operations without blocking.
Snapshot Isolation: Ensure that each transaction sees a consistent snapshot of the
database at the start of the transaction to prevent dirty reads and phantom reads.
Recovery Mechanisms:
Transaction Logging:
Write-Ahead Logging (WAL): Log changes to the database before they are applied
to ensure durability and atomicity.
Transaction Log: Maintain a transaction log containing records of all modifications
to the database, including before and after images.
Checkpointing:
Periodic Checkpoints: Perform periodic checkpoints to write all dirty pages to disk
and update the checkpoint record in the transaction log.
Reducing Recovery Time: Checkpoints help reduce recovery time by minimizing the
amount of log replay required in case of a system failure.
Undo and Redo Operations:
UNDO Operations: During recovery, rollback transactions that were active but not
yet committed at the time of failure to maintain atomicity and isolation.
REDO Operations: Reapply committed transactions from the transaction log to
ensure durability and consistency.
Write-Ahead Logging (WAL):
Log Buffer: Buffer log records in memory and flush them to disk before committing
corresponding data changes to ensure durability.
Log Sequence Number (LSN): Maintain a log sequence number to track the order
of log records and ensure consistency during recovery.
Shadow Paging:
Copy-on-Write Technique: Create a shadow copy of the database before making any
modifications, and update only the shadow copy. Once the transaction commits,
update the original database with the changes.
Transaction Rollback and Forward Recovery:
Rollback: Identify incomplete transactions and rollback their changes to maintain
consistency.
Forward Recovery: Reapply committed transactions from the log to bring the
database to a consistent state after a failure.
6)MODULE DESCRIPTION AND FUNCTION:
Patient Management Module:
Function: This module manages patient-related information including admission,
discharge, transfer, medical history, demographic details, insurance information, and
billing.
Features:
Patient registration and admission.
Recording and updating patient demographics.
Managing patient medical records, including diagnosis, treatments, and medications.
Tracking patient progress and medical history.
Handling insurance details and billing information.
Generating reports on patient demographics, admissions, and billing.
Doctor Management Module:
Function: This module handles doctor-related information, scheduling, and
communication.
Features:
Doctor registration and profile management.
Scheduling appointments and managing doctor availability.
Communication tools for doctors to collaborate and communicate with each other
and with patients.
Recording doctor specialization, qualifications, and availability.
Tracking doctor-patient interactions and treatment plans.
Inventory Management Module:
Function: This module oversees the procurement, storage, and distribution of
medical supplies and equipment.
Features:
Managing inventory levels and stock replenishment.
Tracking the movement of medical supplies within the hospital.
Recording details of equipment maintenance and servicing.
Automated reordering of supplies based on predefined thresholds.
Generating reports on inventory levels, usage, and procurement.
Appointment Scheduling Module:
Function: This module facilitates the scheduling of patient appointments with
doctors and other healthcare providers.
Features:
Appointment booking and rescheduling.
Managing doctor availability and scheduling constraints.
Notifying patients of upcoming appointments through SMS or email.
Integration with other modules to check doctor availability and patient records.
Providing a user-friendly interface for patients to book appointments online.
Laboratory Information System (LIS):
Function: This module manages laboratory tests, results, and specimen tracking.
Features:
Ordering and scheduling laboratory tests.
Recording test results and generating reports.
Tracking specimens from collection to analysis.
Integration with electronic medical records for easy access to patient data.
Ensuring compliance with regulatory standards for laboratory testing and reporting.
Electronic Health Record (EHR) System:
Function: This module stores and manages comprehensive electronic health records
for patients.
Features:
Recording and organizing patient health information, including medical history,
diagnoses, treatments, and medications.
Providing secure access to authorized healthcare providers.
Supporting interoperability with other healthcare systems for seamless exchange of
patient data.
Ensuring data security and privacy in compliance with healthcare regulations.
Facilitating decision support tools and analytics for healthcare providers.
Billing and Insurance
Module:
Function: This module handles billing, invoicing, and insurance claims processing.
Features:
Generating and sending invoices to patients and insurance companies.
Processing insurance claims and verifying coverage.
Managing payment processing and tracking outstanding balances.
Providing financial reporting and analytics.
Integrating with patient management and electronic health record systems for
seamless billing workflows.
These modules collectively form a comprehensive hospital data management
system, streamlining administrative tasks, improving patient care, and enhancing
operational efficiency within healthcare facilities.
7) DATABASE CONNECTIVITY AND EMBEDDED SQL OPERATION:
8) PL/SQL PRODUCERS TO OPERATE ON THE DATABASE OF YOUR
PROJECT:
In a hospital data management system, PL/SQL (Procedural Language/Structured
Query Language) procedures can be incredibly useful for implementing complex
business logic, data manipulation tasks, and ensuring data integrity within the
database. Here's how PL/SQL procedures can be utilized:
1. Data Validation and Integrity Constraints:
- Create PL/SQL procedures to enforce data validation rules and integrity
constraints.
- For example, procedures can be used to ensure that only valid data is inserted
into the database, or to enforce referential integrity between related tables.
2. Automating Routine Tasks:
- Develop PL/SQL procedures to automate routine tasks such as data imports,
exports, and data cleanup.
- These procedures can be scheduled to run at specific times or triggered by certain
events, reducing manual effort and ensuring consistency in data management
processes.
3. Implementing Business Logic:
- Utilize PL/SQL procedures to implement complex business logic directly within
the database.
- For example, procedures can calculate billing amounts based on various factors
such as treatment codes, insurance information, and discounts.
4. Data Aggregation and Reporting:
- Develop PL/SQL procedures to aggregate and summarize data for reporting
purposes.
- These procedures can generate reports on patient demographics, treatment
outcomes, resource utilization, and financial metrics.
5. Security and Access Control:
- Implement PL/SQL procedures to enforce security policies and access control
mechanisms.
- For example, procedures can restrict access to sensitive data based on user roles
and privileges.
6. Error Handling and Logging:
- Create PL/SQL procedures to handle errors and log relevant information for
auditing and troubleshooting purposes.
- These procedures can capture and log exceptions, record transaction details, and
notify administrators of critical issues.
7. Integration with External Systems:
- Use PL/SQL procedures to integrate with external systems such as laboratory
information systems, billing systems, and electronic health record systems.
- These procedures can facilitate data exchange, synchronization, and
interoperability between different systems.
8. Performance Optimization:
- Develop PL/SQL procedures to optimize database performance by implementing
efficient data retrieval, manipulation, and storage strategies.
- For example, procedures can utilize advanced SQL techniques, indexes, and
materialized views to improve query performance.
By leveraging PL/SQL procedures within the hospital data management system, you
can enhance data integrity, automate processes, implement complex business logic,
and improve overall system efficiency and reliability.
9. Front End Design, Sample Code for each module, Screen
Shots for each Module
LEADING PAGE :
LOGIN PAGE:
DASHBORAD:
ADD PAITENT DETAILS:
PAITENT DETAILS:
MANAGE PATIENT DETAILS:
DISCHARGE PATIENT:
TRANSFER PATIENTS:
ADD EMPLOYEE DETAILS:
EMPLOYEE DETAIL:
MANAGE EMPLOYEE DETAILS:
ASSIGN DEPARTMENT:
SQL CERTIFICATES:
BASIC:
INERMEDIATE:
ADVANCED: