Título: «Lenguaje de consulta basado en bloques para bases de datos relacionales: Operaciones entre múltiples tablas»
Resumen:
SQL es un lenguaje fundamental para la gestión de bases de datos relacionales, ampliamente utilizado tanto en la industria como en el ámbito académico. Sin embargo, la enseñanza de SQL en la educación secundaria presenta diversos desafíos, especialmente para estudiantes sin formación previa en Ciencias de la Computación. Entre ellos, la rigidez sintáctica del lenguaje resulta particularmente problemática: un error mínimo de escritura impide la ejecución de la consulta y desplaza la atención del estudiante desde la comprensión del problema hacia la corrección de la forma. En este contexto, se vuelve necesario desarrollar herramientas educativas que permitan a los estudiantes interactuar con contenidos conceptuales sin requerir un dominio completo de la sintaxis de SQL, facilitando así su comprensión y aplicación práctica. En SQLBloques, un estudiante puede construir consultas mediante bloques visuales encastrables, visualizar el esquema de su base de datos y ejecutar las consultas directamente desde el navegador, sin necesidad de escribir código.
Este trabajo se basa en la propuesta de Martín Salazar, quien desarrolló una herramienta web denominada SQLBloques para la construcción de consultas SQL mediante bloques visuales. Tomando dicha versión como base práctica, esta tesis propone un rediseño completo del modelo y de la funcionalidad de la herramienta. La nueva versión no solo amplía el conjunto de operaciones soportadas —incorporando consultas sobre múltiples tablas como JOIN y UNION—, sino que también mejora la experiencia de uso, la modularidad y la escalabilidad del sistema. Asimismo, se incorpora una visualización gráfica del esquema de la base de datos, lo cual permite comprender mejor las relaciones entre tablas y facilita el armado de consultas complejas.
El objetivo principal de este proyecto es diseñar e implementar una nueva versión de SQLBloques que permita a los estudiantes construir y ejecutar consultas SQL mediante programación visual con bloques, en un entorno accesible y libre de errores sintácticos. Para ello, la herramienta fue reimplementada bajo un modelo cliente-servidor, con un frontend desarrollado en React y un backend en Node.js utilizando SQLite. Se integró la biblioteca Blockly para representar la lógica de las consultas a través de bloques visuales encastrables, y se desarrolló un analizador sintáctico personalizado para traducir estas estructuras en sentencias SQL ejecutables. Además, se incorporó un módulo de gestión de conexiones que permite trabajar con múltiples bases de datos definidas por el usuario.
Como resultado, se obtuvo una herramienta más robusta y escalable, que amplía las capacidades de la versión original y mejora significativamente su usabilidad y organización interna. Esta nueva iteración de SQLBloques sienta las bases para su implementación en contextos educativos reales, brindando apoyo tanto a docentes como a estudiantes en el aprendizaje de conceptos fundamentales de SQL desde una perspectiva visual y exploratoria.
En conclusión, esta tesis no solo presenta una solución técnica funcional, sino que también responde a una necesidad pedagógica concreta en el ámbito de la educación secundaria. La herramienta desarrollada contribuye a reducir la carga cognitiva asociada al aprendizaje de la sintaxis de SQL, facilita la transición hacia consultas textuales y promueve una comprensión semántica de las operaciones sobre bases de datos. Finalmente, gracias a su diseño modular y a la adopción de tecnologías modernas, SQLBloques se consolida como una plataforma abierta y extensible, con potencial para su evolución futura e integración en propuestas curriculares de enseñanza de bases de datos.