Documento activo

Base de Datos y Esquema

Tablas principales, relaciones y sincronizacion dinamica.

Volver al indice

Base de Datos y Esquema

1. Enfoque general

El sistema usa MySQL con PDO y una mezcla de:

  • tablas base definidas en scripts SQL
  • tablas y columnas agregadas dinamicamente por sincronizadores

Por eso el esquema final real no depende solo del archivo SQL importado.

2. Tablas nucleares identificadas

Identidad y acceso

  • usuarios
  • roles
  • logs_actividad
  • permisos_modulo
  • ip_bloqueadas
  • ip_intentos_login

Academico

  • anios_academicos
  • niveles
  • grados
  • secciones
  • materias
  • asignaciones_docente
  • docentes
  • estudiantes
  • padres_tutores
  • matriculas
  • calificaciones
  • asistencia

Curricula y evaluacion

  • escalas_calificacion
  • escalas_rangos
  • institucion_escalas
  • tipos_evaluacion
  • perfiles_curriculares
  • especialidades_tecnicas
  • plan_estudios

Aula y recursos

  • aulas_virtuales
  • aula_tareas
  • aula_entregas
  • biblioteca_recursos
  • biblioteca_categorias

Comunicacion

  • notificaciones
  • anuncios
  • foro_temas
  • foro_respuestas
  • mensajes_contacto

Institucional

  • institucion
  • expedientes
  • tipos_solicitud
  • areas_institucionales

Finanzas y pagos

  • pagos
  • avisos_deuda

Kiosko

Se gestionan desde el subsistema kiosko. Entre las tablas esperables estan:

  • kiosko_productos
  • kiosko_ventas
  • kiosko_pasarelas_config
  • kiosko_webhook_eventos
  • monedero_recargas

3. Esquema dinamico detectado

Desde config/database.php

Se sincronizan o crean:

  • roles base
  • columnas adicionales en usuarios
  • foro_temas
  • foro_respuestas
  • columnas extra en mensajes_contacto
  • avisos_deuda
  • columnas extra de pasarela en pagos
  • kiosko_sso_tokens

Desde helpers/CalificacionEscalaSync.php

Se sincronizan:

  • paises
  • niveles_educativos
  • escalas_calificacion
  • escalas_rangos
  • institucion_escalas
  • auditoria_calificaciones
  • columnas extendidas en calificaciones
  • columnas extendidas en institucion

Desde helpers/MatriculaService.php

Se agregan columnas y tablas para:

  • variantes de matricula
  • auditoria
  • solicitudes virtuales
  • configuracion de matricula
  • tipos de documento

Desde helpers/CurriculaService.php

Se agregan columnas y tablas para:

  • perfiles curriculares
  • especialidades tecnicas
  • especialidades por anio
  • plan de estudios
  • docentes por nivel

Desde helpers/GestionIntegral.php

Se crean modulos de datos para:

  • calendarizacion
  • convivencia
  • tutoria
  • inclusion
  • instrumentos de gestion
  • recursos humanos
  • inventario
  • salud escolar
  • backups

4. Implicancia tecnica

La base de datos del proyecto debe considerarse "evolutiva". Cualquier manual de instalacion o migracion debe contemplar:

  • SQL base
  • arranque de aplicacion
  • verificacion de sincronizacion

5. Tablas de alta criticidad

Criticas por operacion

  • usuarios
  • roles
  • institucion
  • matriculas
  • calificaciones
  • asistencia
  • pagos
  • expedientes

Criticas por integridad funcional

  • permisos_modulo
  • anios_academicos
  • asignaciones_docente
  • biblioteca_recursos
  • aulas_virtuales

6. Recomendacion de respaldo

Respaldar siempre:

  • toda la base principal
  • carpeta assets/uploads/
  • carpeta logs/backups/
  • configuraciones externas del servidor

7. Riesgos operativos

  • Importar un SQL antiguo puede dejar tablas o columnas incompletas.
  • La sincronizacion automatica ayuda, pero no sustituye una validacion funcional.
  • Los datos productivos pueden contener configuraciones que cambian el comportamiento por rol, institucion o modulo.