Contenido verificado asociado a este RA
Fundamentos de Manipulación de Datos (DML): Identificación de Sentencias y Herramientas
Esta unidad introduce las sentencias básicas del Lenguaje de Manipulación de Datos (DML) para interactuar con la información en una base de datos, con foco en IDENTIFICAR qué sentencias y qué herramientas gráficas o asistentes permiten realizar cada operación, y en qué situaciones conviene usar una u otra. Se presentan ejemplos concretos de INSERT, UPDATE y DELETE, una tabla de correspondencia entre operaciones y herramientas gráficas habituales, y criterios prácticos de selección, para sentar las bases antes de profundizar en operaciones complejas (guiones de sentencias, transacciones, bloqueos).
Inserción de Datos desde Consultas (INSERT INTO ... SELECT) e Introducción a Guiones SQL
Esta unidad desarrolla el CE c del RA4 (incluir en una tabla la información resultante de la ejecución de una consulta), explicando la sintaxis INSERT INTO ... SELECT, el requisito de que la tabla destino exista previamente con estructura compatible, la compatibilidad de columnas y tipos de datos, y los riesgos de integridad asociados, con ejemplos prácticos completos (incluyendo la creación previa de las tablas destino) y un ejercicio resuelto. Adicionalmente, a modo de introducción y puente hacia el CE d (guiones de sentencias para tareas complejas), se presenta el concepto de guion SQL con un ejemplo revisado y coherente, claramente delimitado como contenido introductorio no evaluable bajo este CE.
Transacciones, Bloqueo de Registros y Control de Concurrencia
Esta unidad profundiza en el concepto de transacción como mecanismo esencial para garantizar la integridad y consistencia de los datos. Se estudia el ciclo de vida de una transacción (inicio, confirmación y anulación total o parcial mediante puntos de guardado), las propiedades ACID como marco conceptual estándar de la industria, y los efectos prácticos de las distintas políticas de bloqueo de registros y niveles de aislamiento sobre el acceso concurrente a la información.
Mantenimiento de la Integridad y Consistencia de la Información
Esta unidad se centra en las medidas prácticas para asegurar que la información en la base de datos se mantenga íntegra y consistente, incluso frente a errores o accesos concurrentes (CE h). Se estudian las restricciones declarativas (PK, FK, UNIQUE, CHECK, NOT NULL), el uso de transacciones para garantizar atomicidad, y se presenta como ampliación técnica el uso de disparadores (triggers) y la validación en la capa de aplicación, distinguiendo claramente qué es contenido curricular del RA4 y qué es conocimiento técnico complementario. Los ejemplos de sintaxis indican expresamente el dialecto SQL empleado, dado que el control transaccional y los disparadores varían entre sistemas gestores de bases de datos.
Conceptos clave
DMLINSERT (simple y multi-fila)UPDATEDELETECláusula WHERE en modificacionesCriterios de selección: herramienta gráfica vs SQL directoHerramientas gráficas de BD (MySQL Workbench, pgAdmin, SSMS)Asistentes de manipulación de datosRestricciones NOT NULLPortabilidad de sintaxis entre motores (AUTO_INCREMENT, fechas)INSERT INTO ... SELECTRequisito de existencia previa de la tabla destino (diferencia frente a SELECT INTO)Compatibilidad de columnas y tipos de datosRestricciones de integridad (PK/FK) en inserciones desde consultaFunciones de fecha dependientes del SGBD frente a funciones estándar (EXTRACT)Guiones SQL (scripts) como introducción no evaluable al CE de diseño de guionesBuenas prácticas: pruebas en entorno de desarrolloTransacción
Errores que conviene evitar
- Olvidar la cláusula WHERE en UPDATE o DELETE, afectando a todos los registros de la tabla (ver Ejercicio 2).
- Errores de sintaxis al insertar datos: no respetar el orden de columnas o los tipos de datos esperados (ver Ejercicio 1).
- Intentar insertar valores nulos en columnas definidas como NOT NULL, provocando un error de restricción.
- Confiar en una herramienta gráfica sin verificar qué sentencia DML genera realmente, lo que dificulta detectar y corregir errores.
- Asumir que sintaxis específica de un motor (AUTO_INCREMENT, CURDATE()+INTERVAL) es estándar SQL portable a cualquier sistema gestor.
- Creer que INSERT INTO ... SELECT crea automáticamente la tabla destino (confusión con SELECT INTO de algunos SGBD).
- Incompatibilidad de tipos de datos entre la consulta SELECT y la tabla destino.
- Violación de restricciones de clave primaria o foránea al insertar desde una consulta.