Blood Bank Management System: Database & SQL Design
Explore a comprehensive Blood Bank Management System database design, featuring ER diagrams, 3NF normalization, and practical SQL implementation queries.
BLOOD BANK MANAGEMENT SYSTEM
Database Design, Normalization & SQL Implementation
Submitted By:
Sameer Rashid — F2024376440
Haider Ali — F2024376338
CC230 — Database Management Systems
University of Management and Technology
Spring 2026
What is the Blood Bank Management System?
The Blood Bank Management System (BBMS) is a relational database application designed to manage the complete lifecycle of blood donation, screening, storage, requests, and blood issuing.
It integrates donors, blood banks, hospitals, patients, and staff into a single system to ensure safe and efficient blood management.
This project demonstrates practical applications of:
ER Modeling
Database Normalization
SQL Implementation
Relational Database Design
10
Tables in Schema
10+
SQL Queries
8
Blood Groups
5
Blood Banks
Table of Contents
01
Introduction & Project Overview
02
System Entities & Relationships
03
Database Design
04
Normalization Overview
05
ER Diagram
06
SQL Tables & Schema
07
SQL Queries
08
Conclusion
System Entities & Relationships
Donor
Individuals donating blood.
Donation
Records of blood donations.
Screening Test
Blood safety test information.
Blood Unit
Tracks stored blood units.
Blood Bank
Storage facilities.
Staff
Employees working in blood banks.
Hospital
Medical institutions requesting blood.
Patient
Patients requiring blood.
Request
Blood requests generated by hospitals.
Blood Issue
Issued blood records.
Database Design
The Blood Bank Management System is designed using relational database principles.
Conceptual Design
Represents entities and their relationships through ER modeling.
Logical Design
Transforms entities into relational tables using primary keys and foreign keys.
Physical Design
Implements tables using SQL with proper data types and constraints.
Database Architecture
System Data Flow
Donor
Donation
Screening Test
Blood Unit
Blood Bank
Hospital
Patient
Request
Blood Issue
Why Normalization?
Benefits of Normalization
Reduce redundancy
Eliminate duplicate data
Improve consistency
Maintain integrity
Increase efficiency
Detailed normalization was performed in Assignment 3. Only the final normalized structure is presented here.
UNF
Unnormalized Form
1NF
First Normal Form
2NF
Second Normal Form
3NF
Third Normal Form
Entity Relationship Diagram
The ER diagram represents all entities and their relationships using primary keys and foreign keys.
SQL Tables & Schema
1. Donor
2. Donation
3. Screening_Test
4. Blood_Bank
5. Blood_Unit
6. Staff
7. Hospital
8. Patient
9. Request
10. Blood_Issue
SQL Table Creation
The database was implemented using CREATE TABLE statements with proper constraints.
CREATE TABLE Donor
CREATE TABLE Donation
CREATE TABLE Screening_Test
CREATE TABLE Blood_Unit
Basic SQL Queries
Query Donors
Donor
Retrieves all donor records
Query Donations
Donation
Retrieves all donation records
Query Blood Units
Blood_Unit
Retrieves all blood unit records
Query Patients
Patient
Retrieves all patient records
SQL JOIN Queries
JOIN operations combine information from multiple tables.
Staff with Blood Bank
Staff.Name, Staff.Role,
Blood_Bank.BankName
Staff
Blood_Bank
Staff.BankID =
Blood_Bank.BankID
Patients with Requests
Patient.Name,
Patient.BloodGroup,
Request.RequestDate
Patient
Request
Patient.HospitalID =
Request.HospitalID
Blood Issue with Patient
Patient.Name,
Blood_Issue.IssueDate,
Blood_Unit.BloodGroup
Blood_Issue
Request
Blood_Issue.RequestID =
Request.RequestID
Patient
Request.HospitalID =
Patient.HospitalID
Aggregate Functions
Total Donations by Donor
<span style="color: #FF8A65; font-weight: bold;">SELECT</span> DonorID, <span style="color: #FF5252; font-weight: bold;">COUNT</span>(*) <span style="color: #FF8A65; font-weight: bold;">AS</span> TotalDonations<br><span style="color: #FF8A65; font-weight: bold;">FROM</span> Donation<br><span style="color: #FF8A65; font-weight: bold;">GROUP BY</span> DonorID;
Blood Units by Blood Group
<span style="color: #FF8A65; font-weight: bold;">SELECT</span> BloodGroup, <span style="color: #FF5252; font-weight: bold;">SUM</span>(Quantity) <span style="color: #FF8A65; font-weight: bold;">AS</span> TotalUnits<br><span style="color: #FF8A65; font-weight: bold;">FROM</span> Blood_Unit<br><span style="color: #FF8A65; font-weight: bold;">GROUP BY</span> BloodGroup;
Patients per Hospital
<span style="color: #FF8A65; font-weight: bold;">SELECT</span> HospitalID, <span style="color: #FF5252; font-weight: bold;">COUNT</span>(*) <span style="color: #FF8A65; font-weight: bold;">AS</span> TotalPatients<br><span style="color: #FF8A65; font-weight: bold;">FROM</span> Patient<br><span style="color: #FF8A65; font-weight: bold;">GROUP BY</span> HospitalID;
COUNT()
Counts rows in groups
GROUP BY
Groups results by column
SUM()
Calculates total values
Project Achievements
ER Modeling
Entity-relationship diagram designed
Database Design
Relational schema created
Normalization
Tables normalized to 3NF
Primary Keys
Unique identifiers defined
Foreign Keys
Referential integrity enforced
SQL Queries
Basic SELECT queries written
JOIN Operations
Multi-table JOINs implemented
Aggregate Functions
COUNT, SUM, GROUP BY used
Relational DB Implementation
Full database deployed
CONCLUSION
Summary
The Blood Bank Management System provides an efficient solution for managing blood donations, testing, storage, requests, and distribution.
The project demonstrates practical applications of database design, normalization, ER modeling, and SQL implementation.
Database Design
Normalization
ER Modeling
SQL Implementation
10 Tables
Complete schema
3NF
Fully normalized
10+ Queries
SQL implemented
Questions?
Thank You For Your Attention
Presented By
Sameer Rashid
Haider Ali
CC230 — Database Management Systems | Spring 2026
- database-design
- sql-implementation
- er-diagram
- normalization
- blood-bank-system
- relational-database
- dbms-project