-- phpMyAdmin SQL Dump
-- version 5.2.0
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Generation Time: Oct 24, 2026 at 03:05 PM
-- Server version: 10.4.27-MariaDB
-- PHP Version: 7.4.33

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;

--
-- Database: `school_management`
--

-- --------------------------------------------------------

--
-- Table structure for table `academic_sessions`
--

CREATE TABLE `academic_sessions` (
  `id` int(11) NOT NULL,
  `session_name` varchar(50) NOT NULL,
  `term` varchar(20) NOT NULL,
  `start_date` date DEFAULT NULL,
  `end_date` date DEFAULT NULL,
  `is_active` tinyint(1) DEFAULT 0,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `academic_sessions`
--

INSERT INTO `academic_sessions` (`id`, `session_name`, `term`, `start_date`, `end_date`, `is_active`, `created_at`) VALUES
(1, '2024/2025', '1st', '2024-09-01', '2024-12-15', 1, '2026-06-24 15:23:29'),
(2, '2024/2025', '2nd', '2025-01-10', '2025-04-15', 1, '2026-06-24 15:23:29'),
(3, '2024/2025', '3rd', '2025-05-01', '2025-08-15', 1, '2026-06-24 15:23:29');

-- --------------------------------------------------------

--
-- Table structure for table `audit_logs`
--

CREATE TABLE `audit_logs` (
  `id` int(11) NOT NULL,
  `user_id` int(11) DEFAULT NULL,
  `action` varchar(50) DEFAULT NULL,
  `table_name` varchar(50) DEFAULT NULL,
  `record_id` int(11) DEFAULT NULL,
  `old_data` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`old_data`)),
  `new_data` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`new_data`)),
  `ip_address` varchar(45) DEFAULT NULL,
  `user_agent` text DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

-- --------------------------------------------------------

--
-- Table structure for table `classes`
--

CREATE TABLE `classes` (
  `id` int(11) NOT NULL,
  `class_name` varchar(50) NOT NULL,
  `class_code` varchar(20) DEFAULT NULL,
  `description` text DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `classes`
--

INSERT INTO `classes` (`id`, `class_name`, `class_code`, `description`, `created_at`) VALUES
(3, 'Primary 1', 'P1', NULL, '2026-06-24 14:07:40'),
(4, 'Primary 2', 'P2', NULL, '2026-06-24 14:07:40'),
(5, 'Primary 3', 'P3', NULL, '2026-06-24 14:07:40'),
(6, 'Primary 4', 'P4', NULL, '2026-06-24 14:07:40'),
(7, 'Primary 5', 'P5', NULL, '2026-06-24 14:07:40'),
(8, 'Primary 6', 'P6', NULL, '2026-06-24 14:07:40'),
(9, 'JSS 1', 'JSS1', NULL, '2026-06-24 14:07:40'),
(10, 'JSS 2', 'JSS2', NULL, '2026-06-24 14:07:40'),
(11, 'JSS 3', 'JSS3', NULL, '2026-06-24 14:07:40'),
(12, 'SSS 1', 'SSS1', NULL, '2026-06-24 14:07:40'),
(13, 'SSS 2', 'SSS2', NULL, '2026-06-24 14:07:40'),
(14, 'SSS 3', 'SSS3', NULL, '2026-06-24 14:07:40'),
(16, 'Pre-Nursery', 'PNur', '', '2026-07-09 15:42:52'),
(17, 'KINDERGARTEN-3', 'KG-3', '', '2026-07-09 16:02:59'),
(18, 'KINDERGARTEN-2', 'KG-2', '', '2026-07-09 16:09:01'),
(19, 'KINDERGARTEN-1', 'KG-1', '', '2026-07-09 16:09:30');

-- --------------------------------------------------------

--
-- Table structure for table `class_subjects`
--

CREATE TABLE `class_subjects` (
  `id` int(11) NOT NULL,
  `class_id` int(11) DEFAULT NULL,
  `subject_id` int(11) DEFAULT NULL,
  `is_compulsory` tinyint(1) DEFAULT 1,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `class_subjects`
--

INSERT INTO `class_subjects` (`id`, `class_id`, `subject_id`, `is_compulsory`, `created_at`) VALUES
(23, 9, 7, 1, '2026-06-24 16:56:13'),
(24, 9, 16, 1, '2026-06-24 16:56:13'),
(25, 9, 8, 1, '2026-06-24 16:56:13'),
(26, 9, 14, 1, '2026-06-24 16:56:13'),
(27, 9, 12, 1, '2026-06-24 16:56:13'),
(28, 9, 11, 1, '2026-06-24 16:56:13'),
(29, 9, 5, 1, '2026-06-24 16:56:13'),
(30, 9, 1, 1, '2026-06-24 16:56:13'),
(31, 9, 18, 1, '2026-06-24 16:56:13'),
(32, 9, 17, 1, '2026-06-24 16:56:14'),
(33, 9, 3, 1, '2026-06-24 16:56:14'),
(34, 10, 7, 1, '2026-06-25 05:04:09'),
(35, 10, 8, 1, '2026-06-25 05:04:09'),
(36, 10, 14, 1, '2026-06-25 05:04:09'),
(37, 10, 12, 1, '2026-06-25 05:04:09'),
(38, 10, 11, 1, '2026-06-25 05:04:09'),
(39, 10, 18, 1, '2026-06-25 05:04:09'),
(40, 10, 15, 1, '2026-06-25 05:04:09'),
(41, 10, 2, 1, '2026-06-25 05:04:09'),
(42, 10, 6, 1, '2026-06-25 05:04:09'),
(43, 10, 3, 1, '2026-06-25 05:04:10'),
(44, 10, 4, 1, '2026-06-25 05:04:10'),
(45, 11, 16, 1, '2026-06-26 17:56:20'),
(46, 11, 8, 1, '2026-06-26 17:56:20'),
(47, 11, 12, 1, '2026-06-26 17:56:20'),
(48, 11, 18, 1, '2026-06-26 17:56:20'),
(49, 11, 15, 1, '2026-06-26 17:56:21'),
(50, 19, 22, 1, '2026-07-09 16:25:50'),
(51, 19, 21, 1, '2026-07-09 16:25:50');

-- --------------------------------------------------------

--
-- Table structure for table `grading_system`
--

CREATE TABLE `grading_system` (
  `id` int(11) NOT NULL,
  `grade` varchar(2) NOT NULL,
  `min_score` decimal(5,2) NOT NULL,
  `max_score` decimal(5,2) NOT NULL,
  `grade_point` decimal(3,2) DEFAULT NULL,
  `remark` varchar(50) DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `grading_system`
--

INSERT INTO `grading_system` (`id`, `grade`, `min_score`, `max_score`, `grade_point`, `remark`, `created_at`) VALUES
(1, 'A', '70.00', '100.00', '4.00', 'Excellent', '2026-06-24 14:07:40'),
(2, 'B', '60.00', '69.00', '3.00', 'Very Good', '2026-06-24 14:07:40'),
(3, 'C', '50.00', '59.00', '2.00', 'Good', '2026-06-24 14:07:40'),
(4, 'D', '45.00', '49.00', '1.00', 'Pass', '2026-06-24 14:07:40'),
(5, 'F', '0.00', '44.00', '0.00', 'Fail', '2026-06-24 14:07:40');

-- --------------------------------------------------------

--
-- Table structure for table `results`
--

CREATE TABLE `results` (
  `id` int(11) NOT NULL,
  `student_id` int(11) DEFAULT NULL,
  `subject_id` int(11) DEFAULT NULL,
  `class_id` int(11) DEFAULT NULL,
  `section_id` int(11) DEFAULT NULL,
  `academic_session_id` int(11) DEFAULT NULL,
  `score` decimal(5,2) DEFAULT NULL,
  `grade` varchar(2) DEFAULT NULL,
  `remark` text DEFAULT NULL,
  `term` enum('1st','2nd','3rd') NOT NULL,
  `session_name` varchar(50) NOT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp(),
  `updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `results`
--

INSERT INTO `results` (`id`, `student_id`, `subject_id`, `class_id`, `section_id`, `academic_session_id`, `score`, `grade`, `remark`, `term`, `session_name`, `created_at`, `updated_at`) VALUES
(1, 1, 7, 9, NULL, 1, '85.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:40', '2026-06-30 23:05:03'),
(2, 1, 16, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:40', '2026-06-30 23:05:03'),
(3, 1, 8, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(4, 1, 14, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(5, 1, 12, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(6, 1, 11, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(7, 1, 5, 9, NULL, 1, '88.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(8, 1, 1, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(9, 1, 18, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(10, 1, 17, 9, NULL, 1, '75.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:03'),
(11, 1, 3, 9, NULL, 1, '70.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 16:30:41', '2026-06-30 23:05:04'),
(13, 2, 7, 9, NULL, 1, '62.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(14, 2, 16, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(15, 2, 8, 9, NULL, 1, '63.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(16, 2, 14, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(17, 2, 12, 9, NULL, 1, '87.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(18, 2, 11, 9, NULL, 1, '90.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(19, 2, 5, 9, NULL, 1, '64.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:58'),
(20, 2, 1, 9, NULL, 1, '63.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:59'),
(21, 2, 18, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:59'),
(22, 2, 17, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:59'),
(23, 2, 3, 9, NULL, 1, '70.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-24 17:48:29', '2026-06-30 23:04:59'),
(26, 2, 7, 9, NULL, 2, '92.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(27, 2, 16, 9, NULL, 2, '90.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(28, 2, 8, 9, NULL, 2, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(29, 2, 14, 9, NULL, 2, '37.00', 'F', 'Fail', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(30, 2, 12, 9, NULL, 2, '65.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(31, 2, 11, 9, NULL, 2, '50.00', 'C', 'Good', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(32, 2, 5, 9, NULL, 2, '70.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(33, 2, 1, 9, NULL, 2, '77.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(34, 2, 18, 9, NULL, 2, '56.00', 'C', 'Good', '1st', '2024/2025', '2026-06-26 15:22:05', '2026-06-26 17:04:08'),
(35, 2, 17, 9, NULL, 2, '65.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-26 15:22:06', '2026-06-26 17:04:08'),
(36, 2, 3, 9, NULL, 2, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-26 15:22:06', '2026-06-26 17:04:08'),
(48, 11, 7, 9, NULL, 2, '71.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:01', '2026-06-26 15:50:01'),
(49, 11, 16, 9, NULL, 2, '66.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:01', '2026-06-26 15:50:01'),
(50, 11, 8, 9, NULL, 2, '65.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:01', '2026-06-26 15:50:01'),
(51, 11, 14, 9, NULL, 2, '94.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(52, 11, 12, 9, NULL, 2, '51.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(53, 11, 11, 9, NULL, 2, '77.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(54, 11, 5, 9, NULL, 2, '62.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(55, 11, 1, 9, NULL, 2, '52.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(56, 11, 18, 9, NULL, 2, '93.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(57, 11, 17, 9, NULL, 2, '72.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(58, 11, 3, 9, NULL, 2, '49.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(59, 7, 7, 9, NULL, 2, '92.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(60, 7, 16, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(61, 7, 8, 9, NULL, 2, '62.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(62, 7, 14, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:02', '2026-06-26 15:50:02'),
(63, 7, 12, 9, NULL, 2, '87.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(64, 7, 11, 9, NULL, 2, '55.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(65, 7, 5, 9, NULL, 2, '33.00', 'F', 'Fail', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(66, 7, 1, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(67, 7, 18, 9, NULL, 2, '65.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(68, 7, 17, 9, NULL, 2, '65.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(69, 7, 3, 9, NULL, 2, '45.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-06-26 15:50:03'),
(70, 8, 7, 9, NULL, 2, '61.00', 'B', 'GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(71, 8, 16, 9, NULL, 2, '87.00', 'A', 'EXCELLENT', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(72, 8, 8, 9, NULL, 2, '67.00', 'B', 'GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(73, 8, 14, 9, NULL, 2, '67.00', 'B', 'GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(74, 8, 12, 9, NULL, 2, '76.00', 'B', 'VERY GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(75, 8, 11, 9, NULL, 2, '71.00', 'B', 'VERY GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(76, 8, 5, 9, NULL, 2, '68.00', 'B', 'GOOD', '2nd', '2024/2025', '2026-06-26 15:50:03', '2026-07-01 00:28:02'),
(77, 8, 1, 9, NULL, 2, '79.00', 'B', 'VERY GOOD', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-07-01 00:28:02'),
(78, 8, 18, 9, NULL, 2, '84.00', 'A', 'EXCELLENT', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-07-01 00:28:02'),
(79, 8, 17, 9, NULL, 2, '75.00', 'B', 'VERY GOOD', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-07-01 00:28:02'),
(80, 8, 3, 9, NULL, 2, '84.00', 'A', 'EXCELLENT', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-07-01 00:28:02'),
(81, 3, 7, 9, NULL, 2, '51.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(82, 3, 16, 9, NULL, 2, '68.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(83, 3, 8, 9, NULL, 2, '50.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(84, 3, 14, 9, NULL, 2, '57.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(85, 3, 12, 9, NULL, 2, '62.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(86, 3, 11, 9, NULL, 2, '86.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:04', '2026-06-26 15:50:04'),
(87, 3, 5, 9, NULL, 2, '67.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(88, 3, 1, 9, NULL, 2, '78.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(89, 3, 18, 9, NULL, 2, '71.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(90, 3, 17, 9, NULL, 2, '91.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(91, 3, 3, 9, NULL, 2, '69.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(92, 1, 7, 9, NULL, 2, '81.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(93, 1, 16, 9, NULL, 2, '89.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:05', '2026-06-26 15:50:05'),
(94, 1, 8, 9, NULL, 2, '46.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(95, 1, 14, 9, NULL, 2, '68.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(96, 1, 12, 9, NULL, 2, '92.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(97, 1, 11, 9, NULL, 2, '74.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(98, 1, 5, 9, NULL, 2, '87.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(99, 1, 1, 9, NULL, 2, '82.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(100, 1, 18, 9, NULL, 2, '48.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(101, 1, 17, 9, NULL, 2, '46.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(102, 1, 3, 9, NULL, 2, '63.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(103, 5, 7, 9, NULL, 2, '47.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(104, 5, 16, 9, NULL, 2, '81.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(105, 5, 8, 9, NULL, 2, '66.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(106, 5, 14, 9, NULL, 2, '54.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:06', '2026-06-26 15:50:06'),
(107, 5, 12, 9, NULL, 2, '58.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(108, 5, 11, 9, NULL, 2, '70.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(109, 5, 5, 9, NULL, 2, '62.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(110, 5, 1, 9, NULL, 2, '94.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(111, 5, 18, 9, NULL, 2, '86.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(112, 5, 17, 9, NULL, 2, '69.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(113, 5, 3, 9, NULL, 2, '84.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(114, 10, 7, 9, NULL, 2, '63.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(115, 10, 16, 9, NULL, 2, '53.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(116, 10, 8, 9, NULL, 2, '77.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(117, 10, 14, 9, NULL, 2, '59.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(118, 10, 12, 9, NULL, 2, '56.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(119, 10, 11, 9, NULL, 2, '69.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(120, 10, 5, 9, NULL, 2, '61.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:07', '2026-06-26 15:50:07'),
(121, 10, 1, 9, NULL, 2, '58.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(122, 10, 18, 9, NULL, 2, '76.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(123, 10, 17, 9, NULL, 2, '95.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(124, 10, 3, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(125, 4, 7, 9, NULL, 2, '55.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(126, 4, 16, 9, NULL, 2, '73.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(127, 4, 8, 9, NULL, 2, '95.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(128, 4, 14, 9, NULL, 2, '54.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(129, 4, 12, 9, NULL, 2, '93.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(130, 4, 11, 9, NULL, 2, '50.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(131, 4, 5, 9, NULL, 2, '82.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(132, 4, 1, 9, NULL, 2, '50.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(133, 4, 18, 9, NULL, 2, '59.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:08', '2026-06-26 15:50:08'),
(134, 4, 17, 9, NULL, 2, '73.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(135, 4, 3, 9, NULL, 2, '49.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(136, 12, 7, 9, NULL, 2, '53.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(137, 12, 16, 9, NULL, 2, '50.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(138, 12, 8, 9, NULL, 2, '58.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(139, 12, 14, 9, NULL, 2, '52.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(140, 12, 12, 9, NULL, 2, '53.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(141, 12, 11, 9, NULL, 2, '59.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(142, 12, 5, 9, NULL, 2, '79.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(143, 12, 1, 9, NULL, 2, '66.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(144, 12, 18, 9, NULL, 2, '89.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:09', '2026-06-26 15:50:09'),
(145, 12, 17, 9, NULL, 2, '64.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(146, 12, 3, 9, NULL, 2, '92.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(147, 6, 7, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(148, 6, 16, 9, NULL, 2, '88.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(149, 6, 8, 9, NULL, 2, '95.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(150, 6, 14, 9, NULL, 2, '63.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(151, 6, 12, 9, NULL, 2, '52.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(152, 6, 11, 9, NULL, 2, '87.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(153, 6, 5, 9, NULL, 2, '61.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(154, 6, 1, 9, NULL, 2, '59.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(155, 6, 18, 9, NULL, 2, '69.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:10', '2026-06-26 15:50:10'),
(156, 6, 17, 9, NULL, 2, '52.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(157, 6, 3, 9, NULL, 2, '47.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(158, 9, 7, 9, NULL, 2, '90.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(159, 9, 16, 9, NULL, 2, '48.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(160, 9, 8, 9, NULL, 2, '57.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(161, 9, 14, 9, NULL, 2, '49.00', 'D', 'Pass', '2nd', '2024/2025', '2026-06-26 15:50:11', '2026-06-26 15:50:11'),
(162, 9, 12, 9, NULL, 2, '55.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:12', '2026-06-26 15:50:12'),
(163, 9, 11, 9, NULL, 2, '55.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:12', '2026-06-26 15:50:12'),
(164, 9, 5, 9, NULL, 2, '54.00', 'C', 'Good', '2nd', '2024/2025', '2026-06-26 15:50:12', '2026-06-26 15:50:12'),
(165, 9, 1, 9, NULL, 2, '64.00', 'B', 'Very Good', '2nd', '2024/2025', '2026-06-26 15:50:12', '2026-06-26 15:50:12'),
(166, 9, 18, 9, NULL, 2, '77.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:13', '2026-06-26 15:50:13'),
(167, 9, 17, 9, NULL, 2, '89.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:13', '2026-06-26 15:50:13'),
(168, 9, 3, 9, NULL, 2, '71.00', 'A', 'Excellent', '2nd', '2024/2025', '2026-06-26 15:50:13', '2026-06-26 15:50:13'),
(269, 7, 7, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:38', '2026-06-30 23:05:00'),
(270, 7, 16, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:38', '2026-06-30 23:05:00'),
(271, 7, 8, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:38', '2026-06-30 23:05:00'),
(272, 7, 14, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:38', '2026-06-30 23:05:00'),
(273, 7, 12, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:39', '2026-06-30 23:05:00'),
(274, 7, 11, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:39', '2026-06-30 23:05:00'),
(275, 7, 5, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:39', '2026-06-30 23:05:00'),
(276, 7, 1, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 22:35:39', '2026-06-30 23:05:01'),
(277, 7, 18, 9, NULL, 1, '81.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:40', '2026-06-30 23:05:01'),
(278, 7, 17, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:40', '2026-06-30 23:05:01'),
(279, 7, 3, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 22:35:40', '2026-06-30 23:05:01'),
(280, 11, 7, 9, NULL, 1, '65.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:04:59', '2026-06-30 23:04:59'),
(281, 11, 16, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:04:59', '2026-06-30 23:04:59'),
(282, 11, 8, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:04:59', '2026-06-30 23:04:59'),
(283, 11, 14, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:04:59', '2026-06-30 23:04:59'),
(284, 11, 12, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:04:59', '2026-06-30 23:04:59'),
(285, 11, 11, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(286, 11, 5, 9, NULL, 1, '86.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(287, 11, 1, 9, NULL, 1, '85.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(288, 11, 18, 9, NULL, 1, '90.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(289, 11, 17, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(290, 11, 3, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:00', '2026-06-30 23:05:00'),
(291, 8, 7, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(292, 8, 16, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(293, 8, 8, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(294, 8, 14, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(295, 8, 12, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(296, 8, 11, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(297, 8, 5, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(298, 8, 1, 9, NULL, 1, '77.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(299, 8, 18, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(300, 8, 17, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:01', '2026-06-30 23:05:01'),
(301, 8, 3, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(302, 3, 7, 9, NULL, 1, '78.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(303, 3, 16, 9, NULL, 1, '67.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(304, 3, 8, 9, NULL, 1, '88.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(305, 3, 14, 9, NULL, 1, '66.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(306, 3, 12, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(307, 3, 11, 9, NULL, 1, '81.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(308, 3, 5, 9, NULL, 1, '65.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(309, 3, 1, 9, NULL, 1, '75.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(310, 3, 18, 9, NULL, 1, '64.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:02', '2026-06-30 23:05:02'),
(311, 3, 17, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:03', '2026-06-30 23:05:03'),
(312, 3, 3, 9, NULL, 1, '83.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:03', '2026-06-30 23:05:03'),
(313, 5, 7, 9, NULL, 1, '87.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(314, 5, 16, 9, NULL, 1, '86.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(315, 5, 8, 9, NULL, 1, '85.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(316, 5, 14, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(317, 5, 12, 9, NULL, 1, '63.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(318, 5, 11, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(319, 5, 5, 9, NULL, 1, '87.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(320, 5, 1, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:04', '2026-06-30 23:05:04'),
(321, 5, 18, 9, NULL, 1, '81.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(322, 5, 17, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(323, 5, 3, 9, NULL, 1, '90.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(324, 10, 7, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(325, 10, 16, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(326, 10, 8, 9, NULL, 1, '83.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(327, 10, 14, 9, NULL, 1, '66.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(328, 10, 12, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(329, 10, 11, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(330, 10, 5, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(331, 10, 1, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(332, 10, 18, 9, NULL, 1, '84.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(333, 10, 17, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(334, 10, 3, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(335, 4, 7, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:05', '2026-06-30 23:05:05'),
(336, 4, 16, 9, NULL, 1, '67.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(337, 4, 8, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(338, 4, 14, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(339, 4, 12, 9, NULL, 1, '71.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(340, 4, 11, 9, NULL, 1, '61.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(341, 4, 5, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(342, 4, 1, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(343, 4, 18, 9, NULL, 1, '75.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(344, 4, 17, 9, NULL, 1, '77.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(345, 4, 3, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(346, 12, 7, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(347, 12, 16, 9, NULL, 1, '88.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(348, 12, 8, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(349, 12, 14, 9, NULL, 1, '82.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(350, 12, 12, 9, NULL, 1, '81.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:06', '2026-06-30 23:05:06'),
(351, 12, 11, 9, NULL, 1, '69.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(352, 12, 5, 9, NULL, 1, '75.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(353, 12, 1, 9, NULL, 1, '74.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(354, 12, 18, 9, NULL, 1, '68.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(355, 12, 17, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(356, 12, 3, 9, NULL, 1, '80.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(357, 6, 7, 9, NULL, 1, '70.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(358, 6, 16, 9, NULL, 1, '73.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(359, 6, 8, 9, NULL, 1, '67.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(360, 6, 14, 9, NULL, 1, '66.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(361, 6, 12, 9, NULL, 1, '84.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(362, 6, 11, 9, NULL, 1, '89.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(363, 6, 5, 9, NULL, 1, '76.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(364, 6, 1, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(365, 6, 18, 9, NULL, 1, '79.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(366, 6, 17, 9, NULL, 1, '72.00', 'A', 'Excellent', '1st', '2024/2025', '2026-06-30 23:05:07', '2026-06-30 23:05:07'),
(367, 6, 3, 9, NULL, 1, '63.00', 'B', 'Very Good', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-06-30 23:05:08'),
(368, 9, 7, 9, NULL, 1, '85.00', 'A', 'EXCELLENT', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(369, 9, 16, 9, NULL, 1, '91.00', 'A', 'OUTSTANDING', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(370, 9, 8, 9, NULL, 1, '73.00', 'B', 'VERY GOOD', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(371, 9, 14, 9, NULL, 1, '79.00', 'B', 'VERY GOOD', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(372, 9, 12, 9, NULL, 1, '92.00', 'A', 'OUTSTANDING', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(373, 9, 11, 9, NULL, 1, '85.00', 'A', 'EXCELLENT', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(374, 9, 5, 9, NULL, 1, '87.00', 'A', 'EXCELLENT', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(375, 9, 1, 9, NULL, 1, '82.00', 'A', 'EXCELLENT', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(376, 9, 18, 9, NULL, 1, '91.00', 'A', 'OUTSTANDING', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(377, 9, 17, 9, NULL, 1, '78.00', 'B', 'VERY GOOD', '1st', '2024/2025', '2026-06-30 23:05:08', '2026-07-01 00:12:02'),
(378, 9, 3, 9, NULL, 1, '85.00', 'A', 'EXCELLENT', '1st', '2024/2025', '2026-06-30 23:05:09', '2026-07-01 00:12:02');

-- --------------------------------------------------------

--
-- Table structure for table `result_summaries`
--

CREATE TABLE `result_summaries` (
  `id` int(11) NOT NULL,
  `student_id` int(11) DEFAULT NULL,
  `academic_session_id` int(11) DEFAULT NULL,
  `term` enum('1st','2nd','3rd') NOT NULL,
  `total_score` decimal(10,2) DEFAULT NULL,
  `average_score` decimal(5,2) DEFAULT NULL,
  `highest_average` decimal(5,2) DEFAULT NULL,
  `lowest_average` decimal(5,2) DEFAULT NULL,
  `position` int(11) DEFAULT NULL,
  `total_students` int(11) DEFAULT NULL,
  `overall_performance` enum('Excellent','Very Good','Good','Pass','Fail') DEFAULT NULL,
  `class_id` int(11) DEFAULT NULL,
  `section_id` int(11) DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp(),
  `updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
  `session_name` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `result_summaries`
--

INSERT INTO `result_summaries` (`id`, `student_id`, `academic_session_id`, `term`, `total_score`, `average_score`, `highest_average`, `lowest_average`, `position`, `total_students`, `overall_performance`, `class_id`, `section_id`, `created_at`, `updated_at`, `session_name`) VALUES
(1, 1, 1, '1st', '851.00', '77.36', '78.55', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-24 16:30:40', '2026-06-30 23:05:04', '2024/2025'),
(2, 2, 1, '1st', '800.00', '72.73', '71.73', '63.36', 0, 12, 'Excellent', 9, NULL, '2026-06-24 17:48:29', '2026-06-30 23:04:59', '2024/2025'),
(3, 2, 2, '1st', '751.00', '68.27', '70.36', '70.36', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:22:05', '2026-06-26 17:04:08', '2024/2025'),
(4, 11, 2, '2nd', '752.00', '68.36', '70.30', '70.30', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:01', '2026-06-26 15:50:02', NULL),
(5, 7, 2, '2nd', '774.00', '70.36', '72.90', '68.36', 0, 12, 'Excellent', 9, NULL, '2026-06-26 15:50:02', '2026-06-26 15:50:03', NULL),
(6, 8, 2, '2nd', '819.00', '74.45', '73.73', '64.45', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:03', '2026-07-01 00:28:02', '2024/2025'),
(7, 3, 2, '2nd', '750.00', '68.18', '72.00', '68.10', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:04', '2026-06-26 15:50:05', NULL),
(8, 1, 2, '2nd', '776.00', '70.55', '72.00', '68.18', 0, 12, 'Excellent', 9, NULL, '2026-06-26 15:50:05', '2026-06-26 15:50:06', NULL),
(9, 5, 2, '2nd', '771.00', '70.09', '72.00', '68.18', 0, 12, 'Excellent', 9, NULL, '2026-06-26 15:50:06', '2026-06-26 15:50:07', NULL),
(10, 10, 2, '2nd', '757.00', '68.82', '72.00', '66.70', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:07', '2026-06-26 15:50:08', NULL),
(11, 4, 2, '2nd', '733.00', '66.64', '72.00', '68.18', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:08', '2026-06-26 15:50:09', NULL),
(12, 12, 2, '2nd', '715.00', '65.00', '72.00', '62.30', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:09', '2026-06-26 15:50:10', NULL),
(13, 6, 2, '2nd', '763.00', '69.36', '72.00', '65.00', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:10', '2026-06-26 15:50:11', NULL),
(14, 9, 2, '2nd', '709.00', '64.45', '72.00', '63.80', 0, 12, 'Very Good', 9, NULL, '2026-06-26 15:50:11', '2026-06-26 15:50:13', NULL),
(15, 7, 1, '1st', '851.00', '77.36', '78.55', '69.00', 0, 12, 'Excellent', 9, NULL, '2026-06-30 22:35:38', '2026-06-30 23:05:01', '2024/2025'),
(16, 11, 1, '1st', '864.00', '78.55', '79.10', '63.36', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:04:59', '2026-06-30 23:05:00', '2024/2025'),
(17, 8, 1, '1st', '830.00', '75.45', '78.55', '69.00', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:01', '2026-06-30 23:05:02', '2024/2025'),
(18, 3, 1, '1st', '814.00', '74.00', '78.55', '69.00', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:02', '2026-06-30 23:05:03', '2024/2025'),
(19, 5, 1, '1st', '898.00', '81.64', '80.80', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:04', '2026-06-30 23:05:05', '2024/2025'),
(20, 10, 1, '1st', '846.00', '76.91', '81.64', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:05', '2026-06-30 23:05:05', '2024/2025'),
(21, 4, 1, '1st', '808.00', '73.45', '81.64', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:06', '2026-06-30 23:05:06', '2024/2025'),
(22, 12, 1, '1st', '847.00', '77.00', '81.64', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:06', '2026-06-30 23:05:07', '2024/2025'),
(23, 6, 1, '1st', '818.00', '74.36', '81.64', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:07', '2026-06-30 23:05:08', '2024/2025'),
(24, 9, 1, '1st', '928.00', '84.36', '84.36', '72.73', 0, 12, 'Excellent', 9, NULL, '2026-06-30 23:05:08', '2026-07-01 00:12:02', '2024/2025');

-- --------------------------------------------------------

--
-- Table structure for table `schools`
--

CREATE TABLE `schools` (
  `id` int(11) NOT NULL,
  `name` varchar(255) NOT NULL,
  `motto` varchar(255) DEFAULT NULL,
  `address` text DEFAULT NULL,
  `phone` varchar(20) DEFAULT NULL,
  `email` varchar(100) DEFAULT NULL,
  `logo` varchar(255) DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `schools`
--

INSERT INTO `schools` (`id`, `name`, `motto`, `address`, `phone`, `email`, `logo`, `created_at`) VALUES
(1, 'Gods Great Ambassadors Private School', 'Raising Future Generarion', 'Ojuwo-Afu, Igara-Mela/Odolu LGA, Kogi State', '08039135724', 'benomale2017@gmail.com', 'uploads/school_logo_1782337062.jpeg', '2026-06-24 14:07:40');

-- --------------------------------------------------------

--
-- Table structure for table `sections`
--

CREATE TABLE `sections` (
  `id` int(11) NOT NULL,
  `class_id` int(11) DEFAULT NULL,
  `section_name` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `sections`
--

INSERT INTO `sections` (`id`, `class_id`, `section_name`) VALUES
(2, 9, 'Grace'),
(4, 9, 'Joy'),
(3, 10, 'Mercy');

-- --------------------------------------------------------

--
-- Table structure for table `students`
--

CREATE TABLE `students` (
  `id` int(11) NOT NULL,
  `admission_number` varchar(50) NOT NULL,
  `registration_number` varchar(50) DEFAULT NULL,
  `first_name` varchar(50) NOT NULL,
  `last_name` varchar(50) NOT NULL,
  `middle_name` varchar(50) DEFAULT NULL,
  `date_of_birth` date DEFAULT NULL,
  `gender` enum('Male','Female','Other') DEFAULT NULL,
  `address` text DEFAULT NULL,
  `phone` varchar(20) DEFAULT NULL,
  `email` varchar(100) DEFAULT NULL,
  `parent_name` varchar(100) DEFAULT NULL,
  `parent_phone` varchar(20) DEFAULT NULL,
  `parent_email` varchar(100) DEFAULT NULL,
  `current_class_id` int(11) DEFAULT NULL,
  `current_section_id` int(11) DEFAULT NULL,
  `enrollment_date` date DEFAULT NULL,
  `status` enum('Active','Graduated','Transferred','Suspended') DEFAULT 'Active',
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `students`
--

INSERT INTO `students` (`id`, `admission_number`, `registration_number`, `first_name`, `last_name`, `middle_name`, `date_of_birth`, `gender`, `address`, `phone`, `email`, `parent_name`, `parent_phone`, `parent_email`, `current_class_id`, `current_section_id`, `enrollment_date`, `status`, `created_at`) VALUES
(1, '2026/5846', '2026/000001', 'Daniel', 'Eze', 'John', '2010-06-24', 'Male', 'student@gmail.com', '08130055554', 'student@gmail.com', 'Eze', '090977766447', 'student@gmail.com', 9, 2, '2026-06-24', 'Active', '2026-06-24 15:43:37'),
(2, '2026/4225', '2026/000002', 'Abigail', 'Abdul', 'Oga', '2010-06-24', 'Female', NULL, NULL, NULL, NULL, NULL, NULL, 9, NULL, '2026-06-24', 'Active', '2026-06-24 17:46:50'),
(3, '2026/7519', '2026/000003', 'John', 'Doe', NULL, '2010-05-15', 'Male', '123 Main Street Lagos', '08012345678', 'john.doe@email.com', 'James Doe', '08087654321', 'james.doe@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(4, '2026/4953', '2026/000004', 'Jane', 'Smith', NULL, '2011-08-20', 'Female', '456 Oak Avenue Abuja', '08098765432', 'jane.smith@email.com', 'Mary Smith', '08054321987', 'mary.smith@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(5, '2026/2717', '2026/000005', 'Michael', 'Johnson', 'Mike', '2009-12-10', 'Male', '789 Pine Road Ibadan', '08011223344', 'michael.johnson@email.com', 'Robert Johnson', '08099887766', 'robert.johnson@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(6, '2026/4849', '2026/000006', 'Sarah', 'Williams', NULL, '2010-03-25', 'Female', '321 Elm Street Port Harcourt', '08044556677', 'sarah.williams@email.com', 'Lisa Williams', '08066778899', 'lisa.williams@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(7, '2026/2671', '2026/000007', 'David', 'Brown', NULL, '2011-07-18', 'Male', '654 Maple Avenue Kano', '08077889900', 'david.brown@email.com', 'James Brown', '08055667788', 'james.brown@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(8, '2026/0182', '2026/000008', 'Emma', 'Davis', 'Em', '2009-09-30', 'Female', '987 Cedar Lane Enugu', '08022334455', 'emma.davis@email.com', 'Paul Davis', '08033445566', 'paul.davis@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(9, '2026/4071', '2026/000009', 'James', 'Wilson', NULL, '2010-11-12', 'Male', '159 Birch Street Benin City', '08066778899', 'james.wilson@email.com', 'Mark Wilson', '08077889900', 'mark.wilson@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(10, '2026/3112', '2026/000010', 'Olivia', 'Martinez', 'Oli', '2011-04-08', 'Female', '753 Spruce Avenue Jos', '08055667788', 'olivia.martinez@email.com', 'Maria Martinez', '08088990011', 'maria.martinez@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(11, '2026/2806', '2026/000011', 'William', 'Anderson', 'Will', '2009-06-22', 'Male', '357 Palm Drive Ilorin', '08099887766', 'william.anderson@email.com', 'Richard Anderson', '08000112233', 'richard.anderson@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(12, '2026/5674', '2026/000012', 'Sophia', 'Thomas', NULL, '2010-10-05', 'Female', '258 Willow Road Abeokuta', '08044332211', 'sophia.thomas@email.com', 'Nancy Thomas', '08055443322', 'nancy.thomas@email.com', 9, NULL, '2026-06-24', 'Active', '2026-06-24 19:30:29'),
(13, '2026/9370', '2026/000013', 'admission_number', 'first_name', 'last_name', NULL, NULL, 'email', 'address', 'phone', 'class_name', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:47:45'),
(14, '2026/6827', '2026/000014', 'admission_number', 'first_name', 'last_name', NULL, NULL, 'email', 'address', 'phone', 'class_name', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:49:29'),
(15, '2026/6317', '2026/000015', 'admission_number', 'first_name', 'last_name', NULL, NULL, 'email', 'address', 'phone', 'class_name', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(16, '2026/5039', '2026/000016', '1', 'Mohammed', 'Yahaya Billal', '2009-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(17, '2026/2069', '2026/000017', '2', 'Ojonugwa', 'John Oyibo', '2009-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(18, '2026/8346', '2026/000018', '3', 'Wisdom', 'Kenneth', '2009-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(19, '2026/9844', '2026/000019', '4', 'Abubakar', 'Sediq Zekeri', '2009-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(20, '2026/4010', '2026/000020', '5', 'Abdul', 'Goodwill', '2009-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(21, '2026/9664', '2026/000021', '6', 'Usman', 'Mujahid', '2009-08-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(22, '2026/9329', '2026/000022', '7', 'Isatah', 'Ojotule Godwin', '2009-09-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(23, '2026/0634', '2026/000023', '8', 'Oguwu Miracle', 'Omasinachukwu', '2009-10-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(24, '2026/8437', '2026/000024', '9', 'Rabiu', 'Mohammed', '2009-11-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(25, '2026/4651', '2026/000025', '10', 'Usman Umar', 'Muhammed', '2009-12-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(26, '2026/8559', '2026/000026', '11', 'Ismail', 'Umi-Salma', '2010-01-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(27, '2026/9658', '2026/000027', '12', 'Danjuma', 'Hibetula', '2010-02-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(28, '2026/9642', '2026/000028', '13', 'Godwin', 'Deborah', '2010-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(29, '2026/2165', '2026/000029', '14', 'Muktar', 'Khasiat', '2010-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(30, '2026/8529', '2026/000030', '15', 'Omachonu', 'Isabela O.', '2010-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(31, '2026/8211', '2026/000031', '16', 'Alia', 'Ibe Victory', '2010-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(32, '2026/1949', '2026/000032', '17', 'Aminu', 'Zubeida', '2010-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(33, '2026/8422', '2026/000033', '18', 'Abel', 'Daniel', '2008-01-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'Pre-Nursery', NULL, NULL, 16, NULL, '2026-07-09', 'Active', '2026-07-09 15:51:19'),
(34, '2026/3844', '2026/000034', 'admission_number', 'first_name', 'last_name', NULL, NULL, 'email', 'address', 'phone', 'class_name', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(35, '2026/5261', '2026/000035', '1', 'Abubarkar', 's.o Abu', '2009-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(36, '2026/6084', '2026/000036', '2', 'Andrew', 'Duke', '2009-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(37, '2026/2302', '2026/000037', '3', 'Abdullah', 'Shebdeen', '2009-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(38, '2026/2193', '2026/000038', '4', 'Danjuma', 'Wealth', '2009-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(39, '2026/6330', '2026/000039', '5', 'Ibrahim', 'Abdulrahman', '2009-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(40, '2026/8979', '2026/000040', '6', 'Ibrahim', 'Abdulrehim', '2009-08-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(41, '2026/5447', '2026/000041', '7', 'Imran', 'Baba Muktar', '2009-09-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(42, '2026/1952', '2026/000042', '8', 'Abdulah', 'Mubarak', '2009-10-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:32'),
(43, '2026/7484', '2026/000043', '9', 'Vincent', 'muhammed', '2009-11-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(44, '2026/6373', '2026/000044', '10', 'Ezekiel', 'Joseph', '2009-12-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(45, '2026/9431', '2026/000045', '11', 'Oyibo', 'Ojochegbe', '2010-01-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(46, '2026/8218', '2026/000046', '12', 'Taofeek', 'Abdulrasheed', '2010-02-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(47, '2026/7597', '2026/000047', '13', 'Arome', 'Purity', '2010-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(48, '2026/3155', '2026/000048', '14', 'Alfa', 'Rahmat', '2010-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(49, '2026/2499', '2026/000049', '15', 'Emmanuel', 'Gloria', '2010-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(50, '2026/0912', '2026/000050', '16', 'Ismaila', 'Majidat', '2010-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(51, '2026/8864', '2026/000051', '17', 'Itodo', 'Miracle', '2010-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(52, '2026/2613', '2026/000052', '18', 'Shaibu', 'Nazirath', '2008-01-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(53, '2026/9343', '2026/000053', '19', 'Andrew', 'Dutches', '2008-02-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(54, '2026/3411', '2026/000054', '20', 'Umar', 'Nimetulahi', '2008-03-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(55, '2026/7158', '2026/000055', '21', 'Ekele', 'Pheobe.o', '2008-04-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(56, '2026/0236', '2026/000056', '22', 'Ugbede', 'Mary', '2008-05-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(57, '2026/0626', '2026/000057', '23', 'Yahaya', 'Amirat', '2008-06-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(58, '2026/4875', '2026/000058', '24', 'Alisabo', 'Raliyat', '2008-07-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(59, '2026/3966', '2026/000059', '25', 'Usman', 'Umar Mazia', '2008-08-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(60, '2026/2636', '2026/000060', '26', 'Ademu', 'Rabietu', '2008-09-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(61, '2026/4415', '2026/000061', '27', 'Ademu', 'Rukieetu', '2008-10-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-3', NULL, NULL, 17, NULL, '2026-07-09', 'Active', '2026-07-09 16:03:33'),
(62, '2026/4807', '2026/000062', 'admission_number', 'first_name', 'last_name', NULL, NULL, 'email', 'address', 'phone', 'class_name', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(63, '2026/1511', '2026/000063', '1', 'Chima', 'Daniel', '2009-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(64, '2026/5965', '2026/000064', '2', 'Daniel', 'A. Goodnews', '2009-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(65, '2026/9617', '2026/000065', '3', 'Friday', 'o. Emmanuel', '2009-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(66, '2026/1948', '2026/000066', '4', 'Friday', 'Nurudeen', '2009-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(67, '2026/8159', '2026/000067', '5', 'Monday', 'U. Eric', '2009-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(68, '2026/0642', '2026/000068', '6', 'Godwin', 'Aaron', '2009-08-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(69, '2026/9047', '2026/000069', '7', 'Simon', 'Good news', '2009-09-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(70, '2026/1011', '2026/000070', '8', 'Yusuf', 'Suleiman', '2009-10-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(71, '2026/7184', '2026/000071', '9', 'yahaya', 'Senusi', '2009-11-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(72, '2026/3138', '2026/000072', '10', 'Isaika', 'Omakoji Buniyan', '2009-12-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(73, '2026/7071', '2026/000073', '11', 'Monday', 'Abdukimu', '2010-01-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(74, '2026/6434', '2026/000074', '12', 'Alfa', 'Idris', '2010-02-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(75, '2026/3356', '2026/000075', '13', 'Isah', 'Micah Ikebejo', '2010-03-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(76, '2026/7951', '2026/000076', '14', 'Shaibu', 'Freedom', '2010-04-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(77, '2026/2689', '2026/000077', '15', 'john', 'Isreal', '2010-05-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(78, '2026/2201', '2026/000078', '16', 'Usman', 'Yahaya', '2010-06-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(79, '2026/5145', '2026/000079', '17', 'Isaiah', 'Peter', '2010-07-01', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(80, '2026/2334', '2026/000080', '18', 'Saturday', 'Emmanuel m', '2008-01-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(81, '2026/6183', '2026/000081', '19', 'Abbas', 'Hawahwu', '2008-02-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(82, '2026/3959', '2026/000082', '20', 'Akagwu', 'A.Nimetullahi', '2008-03-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(83, '2026/5538', '2026/000083', '21', 'abdullahi', 'Nadia', '2008-04-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:09'),
(84, '2026/3480', '2026/000084', '22', 'francis', 'Dominion', '2008-05-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10'),
(85, '2026/6265', '2026/000085', '23', 'Muhammed', 'Aishat', '2008-06-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10'),
(86, '2026/9915', '2026/000086', '24', 'Muktar', 'Hafsat', '2008-07-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10'),
(87, '2026/3301', '2026/000087', '25', 'Idris', 'Gloria', '2008-08-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10'),
(88, '2026/0467', '2026/000088', '26', 'Joseph', 'Precious', '2008-09-02', NULL, 'student@gmail.com', 'Kogi', '80777336636', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10'),
(89, '2026/4520', '2026/000089', 'Hassan', 'Rahmat', '', '2008-10-02', NULL, 'student@gmail.com', 'Kogi', 'student@gmail.com', 'KINDERGARTEN-2', NULL, NULL, 18, NULL, '2026-07-09', 'Active', '2026-07-09 16:21:10');

-- --------------------------------------------------------

--
-- Table structure for table `subjects`
--

CREATE TABLE `subjects` (
  `id` int(11) NOT NULL,
  `subject_name` varchar(100) NOT NULL,
  `subject_code` varchar(20) DEFAULT NULL,
  `description` text DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `subjects`
--

INSERT INTO `subjects` (`id`, `subject_name`, `subject_code`, `description`, `created_at`) VALUES
(1, 'English Language', 'ENG', NULL, '2026-06-24 14:07:40'),
(2, 'Mathematics', 'MATH', NULL, '2026-06-24 14:07:40'),
(3, 'Science', 'SCI', NULL, '2026-06-24 14:07:40'),
(4, 'Social Studies', 'SST', NULL, '2026-06-24 14:07:40'),
(5, 'Computer Studies', 'COM', NULL, '2026-06-24 14:07:40'),
(6, 'Physical Health Education', 'PHE', NULL, '2026-06-24 14:07:40'),
(7, 'Agriculture', 'AGR', NULL, '2026-06-24 14:07:40'),
(8, 'Basic Technology', 'BT', NULL, '2026-06-24 14:07:40'),
(9, 'History', 'HIS', NULL, '2026-06-24 14:07:40'),
(10, 'Geography', 'GEO', NULL, '2026-06-24 14:07:40'),
(11, 'Civic Education', 'CIV', NULL, '2026-06-24 14:07:40'),
(12, 'Christian Religious Knowledge', 'CRK', NULL, '2026-06-24 14:07:40'),
(13, 'Islamic Religious Knowledge', 'IRK', NULL, '2026-06-24 14:07:40'),
(14, 'Business Studies', 'BUS', NULL, '2026-06-24 14:07:40'),
(15, 'Home Economics', 'HEC', NULL, '2026-06-24 14:07:40'),
(16, 'Art and Design', 'ART', NULL, '2026-06-24 14:07:40'),
(17, 'Music', 'MUS', NULL, '2026-06-24 14:07:40'),
(18, 'French', 'FRN', NULL, '2026-06-24 14:07:40'),
(19, 'Yoruba', 'YOR', NULL, '2026-06-24 14:07:40'),
(20, 'Literature in English', 'LIT', NULL, '2026-06-24 14:07:40'),
(21, 'POEM', 'PEM', '', '2026-07-09 16:24:35'),
(22, 'HEALTH HABIT', 'HHB', '', '2026-07-09 16:25:04');

-- --------------------------------------------------------

--
-- Table structure for table `teachers`
--

CREATE TABLE `teachers` (
  `id` int(11) NOT NULL,
  `staff_id` varchar(50) NOT NULL,
  `first_name` varchar(50) NOT NULL,
  `last_name` varchar(50) NOT NULL,
  `email` varchar(100) DEFAULT NULL,
  `phone` varchar(20) DEFAULT NULL,
  `qualification` text DEFAULT NULL,
  `specialization` varchar(100) DEFAULT NULL,
  `hire_date` date DEFAULT NULL,
  `status` enum('Active','Inactive') DEFAULT 'Active',
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `teachers`
--

INSERT INTO `teachers` (`id`, `staff_id`, `first_name`, `last_name`, `email`, `phone`, `qualification`, `specialization`, `hire_date`, `status`, `created_at`) VALUES
(1, 'TCH2024-001', 'Adamu', 'Galuba', 'admin@ce.com', '', 'BSc', 'English and Agric', '2026-06-24', 'Active', '2026-06-24 18:29:49');

-- --------------------------------------------------------

--
-- Table structure for table `teacher_subjects`
--

CREATE TABLE `teacher_subjects` (
  `id` int(11) NOT NULL,
  `teacher_id` int(11) DEFAULT NULL,
  `subject_id` int(11) DEFAULT NULL,
  `class_id` int(11) DEFAULT NULL,
  `academic_session_id` int(11) DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `teacher_subjects`
--

INSERT INTO `teacher_subjects` (`id`, `teacher_id`, `subject_id`, `class_id`, `academic_session_id`, `created_at`) VALUES
(1, 1, 7, 9, 1, '2026-06-25 05:25:12'),
(2, 1, 14, 10, 2, '2026-06-25 05:26:03'),
(3, 1, 5, 11, 3, '2026-06-26 17:57:34');

-- --------------------------------------------------------

--
-- Table structure for table `users`
--

CREATE TABLE `users` (
  `id` int(11) NOT NULL,
  `username` varchar(50) NOT NULL,
  `email` varchar(100) NOT NULL,
  `password_hash` varchar(255) NOT NULL,
  `full_name` varchar(100) DEFAULT NULL,
  `user_role` enum('Admin','Teacher','Parent','Student','Accountant') DEFAULT 'Teacher',
  `is_active` tinyint(1) DEFAULT 1,
  `last_login` datetime DEFAULT NULL,
  `created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

--
-- Dumping data for table `users`
--

INSERT INTO `users` (`id`, `username`, `email`, `password_hash`, `full_name`, `user_role`, `is_active`, `last_login`, `created_at`) VALUES
(1, 'admin', 'admin@school.com', '$2y$10$PMfAgDp.XFToZQo6oYh06e0l9DykUjhdsmPN5P2xf8lJ1gxL/ZX92', 'System Administrator', 'Admin', 1, '2026-07-14 16:22:24', '2026-06-24 14:07:40'),
(2, 'teacher', 'teacher@school.com', '$2y$10$JdC5qqIhpuH7akfmARsp1O5MT0K2UJAO7py7avP0LlLLmAyqQxuX6', 'Demo Teacher', 'Teacher', 1, '2026-06-26 19:02:04', '2026-06-24 15:23:29'),
(3, 'mesh', 'mesh@school.com', '$2y$10$PMfAgDp.XFToZQo6oYh06e0l9DykUjhdsmPN5P2xf8lJ1gxL/ZX92', 'Meshach', 'Admin', 1, '2026-06-26 15:51:35', '2026-06-24 15:38:48'),
(4, 'student', 'student@school.com', '$2y$10$8TJeFhRGaMcTZxy9jzdJxOi.ChyL938.McJ.HBFHbGHRT0EjysjBG', 'Daniel', 'Student', 1, '2026-06-26 18:59:27', '2026-06-24 15:39:19'),
(5, 'TCH2024-001', 'admin@ce.com', '$2y$10$f0.KdWiscNlj8Pb6phqjQ.XFmRv22nEzupjQkKH/ElL2UWpH4aR3q', 'Adamu Galuba', 'Teacher', 1, NULL, '2026-06-24 18:29:49'),
(6, '2026/000001', 'student@gmail.com', '$2y$10$vGP4J.CGA2pNG5olMkiecOXRu94h1Tb8NfpM7GYvrGfe60OQRCqrK', 'Eze Daniel', 'Student', 1, '2026-06-25 05:46:24', '2026-06-24 19:52:26'),
(7, '2026/000002', '2026/000002@school.com', '$2y$10$pmeTCoyLiqvfwbFB3pPFruEHlvM6xXVtgEzfVrBXplmEVcwy8nl.C', 'Abdul Abigail', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(8, '2026/000003', 'john.doe@email.com', '$2y$10$tRf.yEwYg7D6XEgTtQWy1O1C9GUw443WiIZ04G64n0fKviAYDaQw.', 'Doe John', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(9, '2026/000004', 'jane.smith@email.com', '$2y$10$pICsGu/L6nnuJwMzEEGJoeDneiXXta9jaCtqR1HxCFfOsfijMUugq', 'Smith Jane', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(10, '2026/000005', 'michael.johnson@email.com', '$2y$10$CtOkRoEg3tB1uEjnPO0hXOkxkb5nvw0EEX0lJVq1Kbx9D3L43I1HS', 'Johnson Michael', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(11, '2026/000006', 'sarah.williams@email.com', '$2y$10$.babjhjW.x/7hp4aMtnQI.jop/.s6lB4zUfAF1uzkl.BZCI/KwPMu', 'Williams Sarah', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(12, '2026/000007', 'david.brown@email.com', '$2y$10$sxoGYvkOIPsRCQ5CozO9J.NWJo1Jxf5hh2JqXet0RL8xNMPA5aet.', 'Brown David', 'Student', 1, NULL, '2026-06-24 19:52:26'),
(13, '2026/000008', 'emma.davis@email.com', '$2y$10$AtspNARux.TtUIWb1dkdauR.I2yqnwn1ObmHMuzlyyr.KPqnAFBBS', 'Davis Emma', 'Student', 1, NULL, '2026-06-24 19:52:27'),
(14, '2026/000009', 'james.wilson@email.com', '$2y$10$Yp3iWkPf6zOQAARGmfUBQOJcR8tA4vy7jRnX6S3p/NJo4ar9V6t6e', 'Wilson James', 'Student', 1, NULL, '2026-06-24 19:52:27'),
(15, '2026/000010', 'olivia.martinez@email.com', '$2y$10$VQxK02wWddTA5MxegsAn9OIATcSMykaaFcBYuNp14.dZuo0W1GXIm', 'Martinez Olivia', 'Student', 1, NULL, '2026-06-24 19:52:27'),
(16, '2026/000011', 'william.anderson@email.com', '$2y$10$lSAv1s9y3LOGTD1B/FtaqOoculH3uvXbxBcfQxgF54guZf/ZttjJa', 'Anderson William', 'Student', 1, NULL, '2026-06-24 19:52:27'),
(17, '2026/000012', 'sophia.thomas@email.com', '$2y$10$5gRWr5BW2MGTqegZhHmh1uzWmHvVF0wl.p4grfaDpVOYwHWA16b52', 'Thomas Sophia', 'Student', 1, '2026-06-25 05:48:26', '2026-06-24 19:52:27');

--
-- Indexes for dumped tables
--

--
-- Indexes for table `academic_sessions`
--
ALTER TABLE `academic_sessions`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_session_term` (`session_name`,`term`);

--
-- Indexes for table `audit_logs`
--
ALTER TABLE `audit_logs`
  ADD PRIMARY KEY (`id`),
  ADD KEY `user_id` (`user_id`);

--
-- Indexes for table `classes`
--
ALTER TABLE `classes`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `class_code` (`class_code`);

--
-- Indexes for table `class_subjects`
--
ALTER TABLE `class_subjects`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_class_subject` (`class_id`,`subject_id`),
  ADD KEY `subject_id` (`subject_id`);

--
-- Indexes for table `grading_system`
--
ALTER TABLE `grading_system`
  ADD PRIMARY KEY (`id`);

--
-- Indexes for table `results`
--
ALTER TABLE `results`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_result` (`student_id`,`subject_id`,`academic_session_id`),
  ADD KEY `subject_id` (`subject_id`),
  ADD KEY `class_id` (`class_id`),
  ADD KEY `section_id` (`section_id`),
  ADD KEY `academic_session_id` (`academic_session_id`);

--
-- Indexes for table `result_summaries`
--
ALTER TABLE `result_summaries`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_summary` (`student_id`,`academic_session_id`,`term`),
  ADD KEY `academic_session_id` (`academic_session_id`),
  ADD KEY `class_id` (`class_id`),
  ADD KEY `section_id` (`section_id`);

--
-- Indexes for table `schools`
--
ALTER TABLE `schools`
  ADD PRIMARY KEY (`id`);

--
-- Indexes for table `sections`
--
ALTER TABLE `sections`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_class_section` (`class_id`,`section_name`);

--
-- Indexes for table `students`
--
ALTER TABLE `students`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `admission_number` (`admission_number`),
  ADD UNIQUE KEY `registration_number` (`registration_number`),
  ADD KEY `current_class_id` (`current_class_id`),
  ADD KEY `current_section_id` (`current_section_id`);

--
-- Indexes for table `subjects`
--
ALTER TABLE `subjects`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `subject_code` (`subject_code`);

--
-- Indexes for table `teachers`
--
ALTER TABLE `teachers`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `staff_id` (`staff_id`),
  ADD UNIQUE KEY `email` (`email`);

--
-- Indexes for table `teacher_subjects`
--
ALTER TABLE `teacher_subjects`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `unique_assignment` (`teacher_id`,`subject_id`,`class_id`,`academic_session_id`),
  ADD KEY `subject_id` (`subject_id`),
  ADD KEY `class_id` (`class_id`),
  ADD KEY `academic_session_id` (`academic_session_id`);

--
-- Indexes for table `users`
--
ALTER TABLE `users`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `username` (`username`),
  ADD UNIQUE KEY `email` (`email`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `academic_sessions`
--
ALTER TABLE `academic_sessions`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT for table `audit_logs`
--
ALTER TABLE `audit_logs`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;

--
-- AUTO_INCREMENT for table `classes`
--
ALTER TABLE `classes`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=20;

--
-- AUTO_INCREMENT for table `class_subjects`
--
ALTER TABLE `class_subjects`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=52;

--
-- AUTO_INCREMENT for table `grading_system`
--
ALTER TABLE `grading_system`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

--
-- AUTO_INCREMENT for table `results`
--
ALTER TABLE `results`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=379;

--
-- AUTO_INCREMENT for table `result_summaries`
--
ALTER TABLE `result_summaries`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=25;

--
-- AUTO_INCREMENT for table `schools`
--
ALTER TABLE `schools`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

--
-- AUTO_INCREMENT for table `sections`
--
ALTER TABLE `sections`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;

--
-- AUTO_INCREMENT for table `students`
--
ALTER TABLE `students`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=90;

--
-- AUTO_INCREMENT for table `subjects`
--
ALTER TABLE `subjects`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=23;

--
-- AUTO_INCREMENT for table `teachers`
--
ALTER TABLE `teachers`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

--
-- AUTO_INCREMENT for table `teacher_subjects`
--
ALTER TABLE `teacher_subjects`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=4;

--
-- AUTO_INCREMENT for table `users`
--
ALTER TABLE `users`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=18;

--
-- Constraints for dumped tables
--

--
-- Constraints for table `audit_logs`
--
ALTER TABLE `audit_logs`
  ADD CONSTRAINT `audit_logs_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE SET NULL;

--
-- Constraints for table `class_subjects`
--
ALTER TABLE `class_subjects`
  ADD CONSTRAINT `class_subjects_ibfk_1` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `class_subjects_ibfk_2` FOREIGN KEY (`subject_id`) REFERENCES `subjects` (`id`) ON DELETE CASCADE;

--
-- Constraints for table `results`
--
ALTER TABLE `results`
  ADD CONSTRAINT `results_ibfk_1` FOREIGN KEY (`student_id`) REFERENCES `students` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `results_ibfk_2` FOREIGN KEY (`subject_id`) REFERENCES `subjects` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `results_ibfk_3` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`),
  ADD CONSTRAINT `results_ibfk_4` FOREIGN KEY (`section_id`) REFERENCES `sections` (`id`),
  ADD CONSTRAINT `results_ibfk_5` FOREIGN KEY (`academic_session_id`) REFERENCES `academic_sessions` (`id`);

--
-- Constraints for table `result_summaries`
--
ALTER TABLE `result_summaries`
  ADD CONSTRAINT `fk_result_summaries_student` FOREIGN KEY (`student_id`) REFERENCES `students` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `result_summaries_ibfk_2` FOREIGN KEY (`academic_session_id`) REFERENCES `academic_sessions` (`id`),
  ADD CONSTRAINT `result_summaries_ibfk_3` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`),
  ADD CONSTRAINT `result_summaries_ibfk_4` FOREIGN KEY (`section_id`) REFERENCES `sections` (`id`);

--
-- Constraints for table `sections`
--
ALTER TABLE `sections`
  ADD CONSTRAINT `sections_ibfk_1` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`) ON DELETE CASCADE;

--
-- Constraints for table `students`
--
ALTER TABLE `students`
  ADD CONSTRAINT `students_ibfk_1` FOREIGN KEY (`current_class_id`) REFERENCES `classes` (`id`),
  ADD CONSTRAINT `students_ibfk_2` FOREIGN KEY (`current_section_id`) REFERENCES `sections` (`id`);

--
-- Constraints for table `teacher_subjects`
--
ALTER TABLE `teacher_subjects`
  ADD CONSTRAINT `teacher_subjects_ibfk_1` FOREIGN KEY (`teacher_id`) REFERENCES `teachers` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `teacher_subjects_ibfk_2` FOREIGN KEY (`subject_id`) REFERENCES `subjects` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `teacher_subjects_ibfk_3` FOREIGN KEY (`class_id`) REFERENCES `classes` (`id`) ON DELETE CASCADE,
  ADD CONSTRAINT `teacher_subjects_ibfk_4` FOREIGN KEY (`academic_session_id`) REFERENCES `academic_sessions` (`id`) ON DELETE CASCADE;
COMMIT;

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
