A comprehensive Blood Bank Management System built as a database project with a minimalistic Python-based user interface. The application ensures efficient management of donor, recipient, and blood inventory data while offering role-based access to admin, staff, donors, and recipients.
The backend utilizes Oracle SQL for robust and reliable data storage, leveraging advanced database features such as triggers, procedures, and primary operations.
This project simulates a Blood Bank system catering to a hospital's needs. It keeps track of:
- Donors, their medical history, and donation records.
- Recipients and their transfusion records.
- Blood inventory, including donations and expired blood.
- Staff details and their access levels.
The system provides secure, role-based access:
- Admin: Full access to all records. Admins can add, edit, or delete records after logging in with a password.
- Staff: Limited access to add medical records.
- Donor/Recipient: View-only access to their respective records by entering their ID.
The application is designed to streamline daily blood bank operations and ensure data integrity.
Here is the Entity Relationship Diagram of the Blood Bank Management System.
- Role-Based Access: Secure login with role-specific permissions.
- Data Management:
- Add, edit, and delete donor and recipient records.
- Maintain blood inventory and medical history.
- Store information on expired blood.
- Daily Reports: Automatically generates daily transaction and inventory report.
- Database Operations:
- Advanced use of triggers for rule-based data insertion.
- Frequently accessed tables have pre-defined procedures for efficient operation.
- Minimalistic User Interface: Simple and intuitive navigation.
- Frontend: Python (Tkinter for GUI)
- Backend Database: Oracle SQL
- Clone this repository.
- Install required Python libraries.
- Configure Oracle Database by importing the SQL script.
- Update the database connection in the Python application.
- Run the application.
We aim to improve our system by adding some features:
- Notification alerts: Add a notification system for low stock alerts.
- AI enhancements: Integrate machine learning for donor recommendation.
- System Expansion: Develop a web-based version for remote access.
- Data Visualization: Include graphical representations of stock and donor statistics.
This application was developed as a semester project for our Database Systems course and is the result of a collaborative effort between my friend and me. We are working on improvements and welcome any contributions from your side.














