This project demonstrates hands-on MySQL Database Administration and relational database design for an enterprise-style enrollment system.
The system manages participant enrollments, program data, and enrollment statuses while enforcing strict data integrity, referential integrity, and performance optimization principles.
This project simulates real-world MySQL DBA tasks including:
• Designing normalized schemas using DDL statements
• Implementing primary and foreign key constraints
• Enforcing referential integrity
• Preventing duplicate records using composite unique constraints
• Modeling many-to-many relationships using junction tables
• Creating indexes for performance optimization
• Writing optimized JOIN and aggregation queries
• Managing schema structure and business rules at database level
persons– Participant recordsprograms– Program catalogstatuses– Enrollment status lookup tableenrollments– Junction table linking persons and programs
• One-to-many: persons → enrollments
• One-to-many: programs → enrollments
• Many-to-many resolved through enrollments
• Status enforcement through foreign key reference
Duplicate enrollments are prevented using a composite unique constraint.
• Indexed foreign key columns
• Optimized JOIN queries for reporting
• Structured schema for scalability
• Designed to maintain high data consistency and integrity
• View full enrollment report with status
• Count enrollments per program
• Identify active participants
• Aggregate enrollment metrics
enterprise-enrollment-management-database/
├── schema/ → DDL table creation scripts
├── data/ → Sample data inserts
├── constraints/ → Business rule enforcement
├── indexes/ → Performance tuning scripts
├── queries/ → Reporting & validation queries
├── er_diagram.png
└── README.md
• MySQL Database Administration fundamentals
• Schema design and DDL management
• Referential integrity enforcement
• Query optimization
• Performance indexing
• Relational modeling
• Business rule enforcement
Tinyiko Patience Mathebula
Junior SQL / MySQL Database Administrator
GitHub: https://github.com/Tinyiko-Mathebula