Skip to content

sukanyaraveendran/SQL-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“˜ Online Learning Management System (LMS) – MySQL Project

This project is a fully structured Learning Management System (LMS) database built using MySQL. It simulates how modern e-learning platforms manage courses, students, instructors, module progress, quizzes, scoring, and certification.

The project includes normalized database design, inserted sample data, analytical SQL queries, stored procedures, and custom functions.

πŸš€ Features

  1. User Management

Students table

Instructors table

Sign-up dates, departments, emails

  1. Course & Module Structure

Each course contains ordered modules

Module prerequisites

Module progress tracking per student

  1. Enrollments & Progress

Students can enroll in multiple courses

Tracks per-module progress (Completed / Ongoing / Dropped)

Automatically computes course completion patterns

  1. Quiz Management

Quizzes mapped to modules

Questions & correct answers

Tracks quiz attempts and scores

  1. Certificates

Auto-generate certificates only when: βœ” All modules completed βœ” All quiz scores β‰₯ 5

Certificates include unique certificate IDs and issue dates

  1. Analytics & Reports (Advanced SQL Queries)

Module completion rates

Average quiz scores (course-wise, module-wise, quiz-wise)

Students who didn’t finish courses

Complete student β†’ course β†’ module β†’ quiz join view

  1. Stored Procedure: issueCertificates()

Automatically issues certificates for eligible students.

  1. Function: getStudentProgress()

Returns overall course progress (%) for any student.

πŸ— Database Schema Overview Tables Included

students

instructors

courses

modules

enrollments

moduleprogress

quiz

questions

quizattempts

certificates

All tables include primary keys, foreign keys, and necessary relationships to maintain database integrity.

πŸ“‚ Project Structure /lms_database.sql β†’ Complete MySQL schema, sample data, queries, stored procedure, and function README.md β†’ Project documentation

πŸ“ How to Use

Open MySQL Workbench / XAMPP / phpMyAdmin

Create the database:

CREATE DATABASE lms_db; USE lms_db;

Run the entire SQL script (lms_database.sql).

Test the built-in queries, procedure, and function.

πŸ“Š Included Reports (Examples)

Module ordering per course

Completion rate per module

Average quiz scores

Students who dropped modules

Full joined LMS overview

πŸ… Certificate Generation Example

Run:

CALL issueCertificates(); SELECT * FROM certificates;

🎯 Purpose of This Project

This project is ideal for:

Database portfolio building

College or university database assignments

Demonstration of MySQL joins, constraints, procedures, and functions

Understanding real LMS data architecture

πŸ‘©β€πŸ’» Technologies Used

MySQL

SQL (Joins, Subqueries, Grouping, Procedures, and Functions)

About

Online Learning MAnagement System

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published