Files
saqel/backend/scripts/fix_student_grades.php
T

38 lines
1.4 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
require_once dirname(__DIR__) . '/app/bootstrap.php';
use App\Core\Database;
echo "🔧 Starting Saqel Student Grade Repair Engine...\n";
try {
Database::query("ALTER TABLE students ALTER COLUMN grade_level SET DEFAULT 'grade_10'");
echo " ✓ Altered students.grade_level default to 'grade_10'\n";
} catch (\Throwable $e) {
echo " ℹ Note on students alter: " . $e->getMessage() . "\n";
}
try {
Database::query("ALTER TABLE school_rosters ALTER COLUMN grade_level SET DEFAULT 'grade_10'");
echo " ✓ Altered school_rosters.grade_level default to 'grade_10'\n";
} catch (\Throwable $e) {
echo " ℹ Note on school_rosters alter: " . $e->getMessage() . "\n";
}
try {
$affectedStudents = Database::query("UPDATE students SET grade_level = 'grade_10' WHERE grade_level IN ('tawjihi_2008', 'grade_12')");
echo " ✓ Updated obsolete tawjihi_2008/grade_12 students to 'grade_10'\n";
} catch (\Throwable $e) {
echo " ❌ Error updating students: " . $e->getMessage() . "\n";
}
try {
$affectedRosters = Database::query("UPDATE school_rosters SET grade_level = 'grade_10' WHERE grade_level IN ('tawjihi_2008', 'grade_12')");
echo " ✓ Updated obsolete tawjihi_2008/grade_12 rosters to 'grade_10'\n";
} catch (\Throwable $e) {
echo " ❌ Error updating rosters: " . $e->getMessage() . "\n";
}
echo "🎉 Grade repair completed successfully!\n";