Contenido verificado asociado a este RA
Introducción a la Automatización de Tareas en Bases de Datos
Esta unidad introduce las diferentes formas de automatizar tareas en un Sistema Gestor de Bases de Datos (SGBD), distinguiendo entre guiones de ejecución puntual y objetos persistentes como procedimientos almacenados, funciones y disparadores. Se exploran los métodos de ejecución de guiones y las herramientas disponibles para su edición, sentando las bases conceptuales que se desarrollarán en profundidad en unidades posteriores dedicadas a procedimientos almacenados, funciones, control de flujo, disparadores y cursores.
Automatización de Tareas mediante Guiones SQL y Uso de Funciones Integradas del SGBD
Esta unidad se centra en la definición y utilización de guiones (scripts) para automatizar tareas repetitivas de administración y explotación de bases de datos, mostrando su estructura, formas de ejecución, buenas prácticas de manejo de errores y ejercicios de aplicación práctica. Complementariamente, se estudia el uso de las funciones predefinidas que ofrece el sistema gestor de bases de datos, distinguiendo las funciones estándar SQL de las específicas de cada SGBD, para combinarlas en secuencias lógicas de operaciones dentro de los guiones.
Creación de Funciones de Usuario (con comparación conceptual frente a los Procedimientos Almacenados)
Esta unidad se centra en la definición de funciones de usuario (CE f), un elemento clave del lenguaje incorporado del SGBD para encapsular cálculos y lógica reutilizable dentro de expresiones SQL. Se estudia su sintaxis (CREATE FUNCTION, RETURNS), el concepto de determinismo, los tipos de parámetros y, brevemente, la existencia de funciones de tabla en algunos sistemas gestores. Como contenido de apoyo y contraste —vinculado al enunciado general de este resultado de aprendizaje y al CE d sobre definición de guiones para automatizar tareas—, se compara con el procedimiento almacenado, de forma que el alumnado distinga claramente cuándo usar cada elemento. Se incluyen ejemplos de código, un ejercicio propuesto y advertencias sobre diferencias de sintaxis entre distintos sistemas gestores.
Control de Flujo, Disparadores y Cursores
Esta unidad aborda tres pilares de la programación dentro del sistema gestor de bases de datos: las estructuras de control de flujo, la definición de disparadores (triggers) y el uso de cursores. Se aprenderá a implementar lógica condicional y repetitiva, a reaccionar automáticamente a eventos sobre las tablas, y a recorrer conjuntos de resultados fila a fila mediante cursores, herramienta esencial cuando el procesamiento no puede resolverse con operaciones puramente conjuntistas.
Manejo de Cursores para Procesamiento Fila a Fila
Esta unidad introduce el concepto y uso de cursores para el procesamiento fila a fila de conjuntos de resultados en procedimientos almacenados. Se aprenderá a declarar, abrir, recorrer y cerrar cursores mediante ejemplos ejecutables en un SGBD concreto, comprendiendo sus implicaciones de rendimiento frente a las operaciones basadas en conjuntos y practicando con un ejercicio guiado.
Conceptos clave
Guion SQL (script)Automatización de tareasProcedimiento almacenadoFunción de usuarioDisparador (trigger)Tarea programada / planificadorIDE de base de datosGuion (script) SQLIdempotencia de un guionMétodos de ejecución de un guion (línea de comandos, herramienta gráfica, planificador de tareas)Funciones de agregación (estándar SQL)Funciones de cadenaFunciones de fecha (dependientes del SGBD)Funciones de control de nulos (COALESCE vs IFNULL/ISNULL)Tratamiento de errores en bloques procedimentales (TRY/CATCH, EXCEPTION, HANDLER)CREATE FUNCTIONRETURNSDeterminismo (DETERMINISTIC / NOT DETERMINISTIC)
Errores que conviene evitar
- Confundir un guion (ejecución puntual, no almacenado en el SGBD) con un procedimiento almacenado (objeto persistente y reutilizable)
- No usar la herramienta adecuada para el SGBD concreto que se está utilizando
- Intentar ejecutar comandos o sintaxis específicos de un SGBD (por ejemplo, T-SQL) en otro SGBD distinto (por ejemplo, MySQL) sin adaptarlos
- Pensar que todas las formas de automatización (guiones, procedimientos, disparadores, tareas programadas) son intercambiables cuando cada una tiene un propósito y ciclo de vida distinto
- No validar la sintaxis del guion antes de ejecutarlo en un entorno de producción
- Olvidar el delimitador de sentencias en guiones con varias instrucciones, provocando errores de interpretación
- Usar funciones específicas de un SGBD (p. ej. IFNULL) en otro que no las soporta, sin verificar compatibilidad ni sustituir por el equivalente estándar (COALESCE)
- No manejar los valores NULL correctamente antes de aplicar funciones de agregación o concatenación, generando resultados nulos inesperados