This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
# Database Schema Comparison Report
|
||||
|
||||
- Compared: `/Volumes/ExternalApps/database_dump/scool_view.sql.zip` (`scool_view.sql`)
|
||||
- Against: `/Volumes/ExternalApps/database_dump/school_prod_1.sql.zip` (`school_prod.sql`)
|
||||
- Scope: table definitions, column definitions, table options, indexes/keys, auto-increment `MODIFY` statements, and foreign-key constraints from the dumps.
|
||||
|
||||
## Summary
|
||||
|
||||
- Tables in `scool_view`: 131
|
||||
- Tables in `school_prod_1`: 131
|
||||
- Tables present in both: 131
|
||||
- Tables only in `scool_view`: 0
|
||||
- Tables only in `school_prod_1`: 0
|
||||
- Matching table schemas: 131
|
||||
- Different table schemas: 0
|
||||
|
||||
**Result: no schema differences found.**
|
||||
|
||||
## Table Status
|
||||
|
||||
| Table | Status | Difference areas |
|
||||
|---|---:|---|
|
||||
| `additional_charges` | Match | - |
|
||||
| `admin_notification_subjects` | Match | - |
|
||||
| `attendance_comment_template` | Match | - |
|
||||
| `attendance_data` | Match | - |
|
||||
| `attendance_day` | Match | - |
|
||||
| `attendance_record` | Match | - |
|
||||
| `attendance_tracking` | Match | - |
|
||||
| `authorized_users` | Match | - |
|
||||
| `badge_print_logs` | Match | - |
|
||||
| `below_sixty_decisions` | Match | - |
|
||||
| `calendar_events` | Match | - |
|
||||
| `certificate_records` | Match | - |
|
||||
| `chapters` | Match | - |
|
||||
| `class_prep_adjustments` | Match | - |
|
||||
| `class_preparation_log` | Match | - |
|
||||
| `class_progress_attachments` | Match | - |
|
||||
| `class_progress_reports` | Match | - |
|
||||
| `classes` | Match | - |
|
||||
| `classSection` | Match | - |
|
||||
| `competition_class_winners` | Match | - |
|
||||
| `competition_scores` | Match | - |
|
||||
| `competition_winners` | Match | - |
|
||||
| `competitions` | Match | - |
|
||||
| `configuration` | Match | - |
|
||||
| `contactus` | Match | - |
|
||||
| `current_flag` | Match | - |
|
||||
| `discount_usages` | Match | - |
|
||||
| `discount_vouchers` | Match | - |
|
||||
| `early_dismissal_signatures` | Match | - |
|
||||
| `email_templates` | Match | - |
|
||||
| `emergency_contacts` | Match | - |
|
||||
| `enrollments` | Match | - |
|
||||
| `event_charges` | Match | - |
|
||||
| `events` | Match | - |
|
||||
| `exam_drafts` | Match | - |
|
||||
| `examquestiondistribution` | Match | - |
|
||||
| `examquestions` | Match | - |
|
||||
| `exams` | Match | - |
|
||||
| `expenses` | Match | - |
|
||||
| `families` | Match | - |
|
||||
| `family_comm_prefs` | Match | - |
|
||||
| `family_guardians` | Match | - |
|
||||
| `family_students` | Match | - |
|
||||
| `final_exam` | Match | - |
|
||||
| `final_score` | Match | - |
|
||||
| `flag` | Match | - |
|
||||
| `grading_locks` | Match | - |
|
||||
| `homework` | Match | - |
|
||||
| `inventory_categories` | Match | - |
|
||||
| `inventory_items` | Match | - |
|
||||
| `inventory_movements` | Match | - |
|
||||
| `invoice_event` | Match | - |
|
||||
| `invoice_students_list` | Match | - |
|
||||
| `invoices` | Match | - |
|
||||
| `ip_attempts` | Match | - |
|
||||
| `late_slip_logs` | Match | - |
|
||||
| `login_activity` | Match | - |
|
||||
| `longanswerquestions` | Match | - |
|
||||
| `manual_payments` | Match | - |
|
||||
| `messages` | Match | - |
|
||||
| `midterm_exam` | Match | - |
|
||||
| `migrations` | Match | - |
|
||||
| `missing_score_overrides` | Match | - |
|
||||
| `nav_items` | Match | - |
|
||||
| `notification_recipients` | Match | - |
|
||||
| `notifications` | Match | - |
|
||||
| `parent_attendance_reports` | Match | - |
|
||||
| `parent_meeting_schedules` | Match | - |
|
||||
| `parent_notifications` | Match | - |
|
||||
| `parents` | Match | - |
|
||||
| `participation` | Match | - |
|
||||
| `password_reset_requests` | Match | - |
|
||||
| `password_resets` | Match | - |
|
||||
| `payment_error` | Match | - |
|
||||
| `payment_notification_logs` | Match | - |
|
||||
| `payment_transactions` | Match | - |
|
||||
| `payments` | Match | - |
|
||||
| `paypal_payments` | Match | - |
|
||||
| `paypal_transactions` | Match | - |
|
||||
| `permissions` | Match | - |
|
||||
| `placement_batches` | Match | - |
|
||||
| `placement_levels` | Match | - |
|
||||
| `placement_scores` | Match | - |
|
||||
| `preferences` | Match | - |
|
||||
| `print_requests` | Match | - |
|
||||
| `project` | Match | - |
|
||||
| `promotion_queue` | Match | - |
|
||||
| `qcmquestions` | Match | - |
|
||||
| `questions` | Match | - |
|
||||
| `questionstruefalse` | Match | - |
|
||||
| `questiontypes` | Match | - |
|
||||
| `quiz` | Match | - |
|
||||
| `refunds` | Match | - |
|
||||
| `reimbursement_batch_admin_files` | Match | - |
|
||||
| `reimbursement_batch_items` | Match | - |
|
||||
| `reimbursement_batches` | Match | - |
|
||||
| `reimbursements` | Match | - |
|
||||
| `report_card_acknowledgements` | Match | - |
|
||||
| `role_nav_items` | Match | - |
|
||||
| `role_permissions` | Match | - |
|
||||
| `roles` | Match | - |
|
||||
| `scan_log` | Match | - |
|
||||
| `school_year_closing_batches` | Match | - |
|
||||
| `school_year_closing_items` | Match | - |
|
||||
| `school_year_transition_logs` | Match | - |
|
||||
| `school_years` | Match | - |
|
||||
| `score_comments` | Match | - |
|
||||
| `sections` | Match | - |
|
||||
| `semester_scores` | Match | - |
|
||||
| `settings` | Match | - |
|
||||
| `shortanswerquestions` | Match | - |
|
||||
| `staff` | Match | - |
|
||||
| `staff_attendance` | Match | - |
|
||||
| `student_allergies` | Match | - |
|
||||
| `student_class` | Match | - |
|
||||
| `student_decisions` | Match | - |
|
||||
| `student_medical_conditions` | Match | - |
|
||||
| `student_section_distribution_drafts` | Match | - |
|
||||
| `students` | Match | - |
|
||||
| `subject_curriculum_items` | Match | - |
|
||||
| `support_requests` | Match | - |
|
||||
| `teacher_attendance_data` | Match | - |
|
||||
| `teacher_class` | Match | - |
|
||||
| `teacher_submission_notification_history` | Match | - |
|
||||
| `user_notifications` | Match | - |
|
||||
| `user_preferences` | Match | - |
|
||||
| `user_roles` | Match | - |
|
||||
| `users` | Match | - |
|
||||
| `whatsapp_group_links` | Match | - |
|
||||
| `whatsapp_group_memberships` | Match | - |
|
||||
| `whatsapp_invites_log` | Match | - |
|
||||
@@ -0,0 +1,366 @@
|
||||
# Database Schema Comparison Report
|
||||
|
||||
- Compared: `/Volumes/ExternalApps/database_dump/scool_view.sql.zip` (`scool_view.sql`)
|
||||
- Against: `/Volumes/ExternalApps/database_dump/school_prod.sql.zip` (`school_prod.sql`)
|
||||
- Scope: table definitions, column definitions, table options, indexes/keys, auto-increment `MODIFY` statements, and foreign-key constraints from the dumps.
|
||||
|
||||
## Summary
|
||||
|
||||
- Tables in `scool_view`: 131
|
||||
- Tables in `school_prod`: 131
|
||||
- Tables present in both: 131
|
||||
- Tables only in `scool_view`: 0
|
||||
- Tables only in `school_prod`: 0
|
||||
- Matching table schemas: 104
|
||||
- Different table schemas: 27
|
||||
|
||||
**Result: schema differences found.**
|
||||
|
||||
## Table Status
|
||||
|
||||
| Table | Status | Difference areas |
|
||||
|---|---:|---|
|
||||
| `additional_charges` | Match | - |
|
||||
| `admin_notification_subjects` | Match | - |
|
||||
| `attendance_comment_template` | Match | - |
|
||||
| `attendance_data` | Match | - |
|
||||
| `attendance_day` | Match | - |
|
||||
| `attendance_record` | Match | - |
|
||||
| `attendance_tracking` | Match | - |
|
||||
| `authorized_users` | Match | - |
|
||||
| `badge_print_logs` | Match | - |
|
||||
| `below_sixty_decisions` | Match | - |
|
||||
| `calendar_events` | Match | - |
|
||||
| `certificate_records` | Match | - |
|
||||
| `chapters` | Match | - |
|
||||
| `class_prep_adjustments` | Match | - |
|
||||
| `class_preparation_log` | Match | - |
|
||||
| `class_progress_attachments` | Match | - |
|
||||
| `class_progress_reports` | Match | - |
|
||||
| `classes` | Match | - |
|
||||
| `classSection` | Different | columns |
|
||||
| `competition_class_winners` | Match | - |
|
||||
| `competition_scores` | Match | - |
|
||||
| `competition_winners` | Different | keys |
|
||||
| `competitions` | Match | - |
|
||||
| `configuration` | Match | - |
|
||||
| `contactus` | Different | columns |
|
||||
| `current_flag` | Match | - |
|
||||
| `discount_usages` | Match | - |
|
||||
| `discount_vouchers` | Different | columns |
|
||||
| `early_dismissal_signatures` | Match | - |
|
||||
| `email_templates` | Match | - |
|
||||
| `emergency_contacts` | Different | columns |
|
||||
| `enrollments` | Match | - |
|
||||
| `event_charges` | Match | - |
|
||||
| `events` | Match | - |
|
||||
| `exam_drafts` | Match | - |
|
||||
| `examquestiondistribution` | Match | - |
|
||||
| `examquestions` | Match | - |
|
||||
| `exams` | Match | - |
|
||||
| `expenses` | Match | - |
|
||||
| `families` | Match | - |
|
||||
| `family_comm_prefs` | Match | - |
|
||||
| `family_guardians` | Match | - |
|
||||
| `family_students` | Match | - |
|
||||
| `final_exam` | Match | - |
|
||||
| `final_score` | Match | - |
|
||||
| `flag` | Match | - |
|
||||
| `grading_locks` | Match | - |
|
||||
| `homework` | Match | - |
|
||||
| `inventory_categories` | Match | - |
|
||||
| `inventory_items` | Match | - |
|
||||
| `inventory_movements` | Match | - |
|
||||
| `invoice_event` | Match | - |
|
||||
| `invoice_students_list` | Match | - |
|
||||
| `invoices` | Match | - |
|
||||
| `ip_attempts` | Different | columns |
|
||||
| `late_slip_logs` | Match | - |
|
||||
| `login_activity` | Different | columns |
|
||||
| `longanswerquestions` | Match | - |
|
||||
| `manual_payments` | Match | - |
|
||||
| `messages` | Match | - |
|
||||
| `midterm_exam` | Match | - |
|
||||
| `migrations` | Match | - |
|
||||
| `missing_score_overrides` | Match | - |
|
||||
| `nav_items` | Match | - |
|
||||
| `notification_recipients` | Different | columns |
|
||||
| `notifications` | Different | columns |
|
||||
| `parent_attendance_reports` | Match | - |
|
||||
| `parent_meeting_schedules` | Match | - |
|
||||
| `parent_notifications` | Match | - |
|
||||
| `parents` | Different | columns |
|
||||
| `participation` | Match | - |
|
||||
| `password_reset_requests` | Match | - |
|
||||
| `password_resets` | Match | - |
|
||||
| `payment_error` | Different | columns |
|
||||
| `payment_notification_logs` | Match | - |
|
||||
| `payment_transactions` | Different | columns |
|
||||
| `payments` | Different | columns |
|
||||
| `paypal_payments` | Match | - |
|
||||
| `paypal_transactions` | Different | columns |
|
||||
| `permissions` | Match | - |
|
||||
| `placement_batches` | Match | - |
|
||||
| `placement_levels` | Match | - |
|
||||
| `placement_scores` | Match | - |
|
||||
| `preferences` | Different | columns |
|
||||
| `print_requests` | Match | - |
|
||||
| `project` | Match | - |
|
||||
| `promotion_queue` | Match | - |
|
||||
| `qcmquestions` | Match | - |
|
||||
| `questions` | Match | - |
|
||||
| `questionstruefalse` | Match | - |
|
||||
| `questiontypes` | Match | - |
|
||||
| `quiz` | Match | - |
|
||||
| `refunds` | Different | columns, keys |
|
||||
| `reimbursement_batch_admin_files` | Match | - |
|
||||
| `reimbursement_batch_items` | Different | columns |
|
||||
| `reimbursement_batches` | Different | columns |
|
||||
| `reimbursements` | Different | columns |
|
||||
| `report_card_acknowledgements` | Match | - |
|
||||
| `role_nav_items` | Match | - |
|
||||
| `role_permissions` | Match | - |
|
||||
| `roles` | Match | - |
|
||||
| `scan_log` | Match | - |
|
||||
| `school_year_closing_batches` | Match | - |
|
||||
| `school_year_closing_items` | Match | - |
|
||||
| `school_year_transition_logs` | Match | - |
|
||||
| `school_years` | Match | - |
|
||||
| `score_comments` | Match | - |
|
||||
| `sections` | Match | - |
|
||||
| `semester_scores` | Match | - |
|
||||
| `settings` | Match | - |
|
||||
| `shortanswerquestions` | Match | - |
|
||||
| `staff` | Different | columns |
|
||||
| `staff_attendance` | Match | - |
|
||||
| `student_allergies` | Match | - |
|
||||
| `student_class` | Match | - |
|
||||
| `student_decisions` | Match | - |
|
||||
| `student_medical_conditions` | Match | - |
|
||||
| `student_section_distribution_drafts` | Match | - |
|
||||
| `students` | Different | columns |
|
||||
| `subject_curriculum_items` | Match | - |
|
||||
| `support_requests` | Different | columns |
|
||||
| `teacher_attendance_data` | Match | - |
|
||||
| `teacher_class` | Different | keys |
|
||||
| `teacher_submission_notification_history` | Match | - |
|
||||
| `user_notifications` | Different | columns |
|
||||
| `user_preferences` | Match | - |
|
||||
| `user_roles` | Match | - |
|
||||
| `users` | Different | columns |
|
||||
| `whatsapp_group_links` | Different | columns, table options, keys |
|
||||
| `whatsapp_group_memberships` | Different | columns, keys |
|
||||
| `whatsapp_invites_log` | Match | - |
|
||||
|
||||
## Detailed Differences
|
||||
|
||||
### `classSection`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) NOT NULL`
|
||||
|
||||
### `competition_winners`
|
||||
|
||||
**Indexes / keys**
|
||||
Only in `school_prod`:
|
||||
```sql
|
||||
ADD KEY `competition_id_class_section_id_rank` (`competition_id`,`class_section_id`,`rank`)
|
||||
```
|
||||
|
||||
### `contactus`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) COLLATE utf8mb4_general_ci NOT NULL`
|
||||
|
||||
### `discount_vouchers`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `emergency_contacts`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) COLLATE utf8mb4_general_ci NOT NULL`
|
||||
- `school_year`: `varchar(9) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `ip_attempts`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `login_activity`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) NOT NULL`
|
||||
|
||||
### `notification_recipients`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `notifications`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `parents`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
- `school_year`: `varchar(20) COLLATE utf8mb4_general_ci NOT NULL`
|
||||
|
||||
### `payment_error`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `payment_transactions`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `payments`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `paypal_transactions`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) DEFAULT NULL`
|
||||
|
||||
### `preferences`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `school_year`: `varchar(20) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `refunds`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
**Indexes / keys**
|
||||
Only in `scool_view`:
|
||||
```sql
|
||||
ADD KEY `idx_refunds_parent_year_semester_status` (`parent_id`,`school_year`,`status`)
|
||||
```
|
||||
Only in `school_prod`:
|
||||
```sql
|
||||
ADD KEY `idx_refunds_parent_year_semester_status` (`parent_id`,`school_year`,`semester`,`status`)
|
||||
```
|
||||
|
||||
### `reimbursement_batch_items`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `reimbursement_batches`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `reimbursements`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `staff`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `school_year`: `varchar(9) COLLATE utf8mb4_general_ci NOT NULL`
|
||||
|
||||
### `students`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
- `school_year`: `varchar(9) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `support_requests`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) NOT NULL`
|
||||
|
||||
### `teacher_class`
|
||||
|
||||
**Indexes / keys**
|
||||
Only in `scool_view`:
|
||||
```sql
|
||||
ADD UNIQUE KEY `unique_teacher_assignment` (`teacher_id`,`class_section_id`,`school_year`)
|
||||
```
|
||||
Only in `school_prod`:
|
||||
```sql
|
||||
ADD KEY `idx_sy_teacher_class_school_year_223511c0` (`school_year`)
|
||||
```
|
||||
|
||||
### `user_notifications`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(10) COLLATE utf8mb4_general_ci DEFAULT NULL`
|
||||
|
||||
### `users`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(255) NOT NULL`
|
||||
- `school_year`: `varchar(9) DEFAULT NULL`
|
||||
|
||||
### `whatsapp_group_links`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `school_year`: `varchar(9) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL`
|
||||
- `semester`: `varchar(20) COLLATE utf8mb4_general_ci NOT NULL`
|
||||
|
||||
Table options changed:
|
||||
- `scool_view`: `ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci`
|
||||
- `school_prod`: `(none)`
|
||||
|
||||
**Indexes / keys**
|
||||
Only in `scool_view`:
|
||||
```sql
|
||||
ADD UNIQUE KEY `uq_section_term` (`class_section_id`)
|
||||
```
|
||||
Only in `school_prod`:
|
||||
```sql
|
||||
ADD UNIQUE KEY `uq_section_term` (`class_section_id`,`school_year`,`semester`)
|
||||
```
|
||||
|
||||
### `whatsapp_group_memberships`
|
||||
|
||||
Columns only in `school_prod`:
|
||||
|
||||
- `semester`: `varchar(20) NOT NULL`
|
||||
|
||||
**Indexes / keys**
|
||||
Only in `scool_view`:
|
||||
```sql
|
||||
ADD UNIQUE KEY `uniq_whatsapp_membership` (`class_section_id`,`school_year`,`subject_type`,`subject_id`)
|
||||
ADD KEY `class_section_id_school_year_semester` (`class_section_id`,`school_year`)
|
||||
```
|
||||
Only in `school_prod`:
|
||||
```sql
|
||||
ADD UNIQUE KEY `uniq_whatsapp_membership` (`class_section_id`,`school_year`,`semester`,`subject_type`,`subject_id`)
|
||||
ADD KEY `class_section_id_school_year_semester` (`class_section_id`,`school_year`,`semester`)
|
||||
```
|
||||
Reference in New Issue
Block a user