Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta Actividad Protocolo Individual (30%) FORMATO DE ENTREGA: Desarrollar la actividad sobre este mismo documento editable para unificar el formato del desarrollo y entrega de la actividad, es decir, responde sobre cada punto, sin borrar ninguno, punto que no se desarrolle no se puede borrar del documento. Documento en PDF respondiendo todos ítem o puntos de la actividad (en el mismo orden descrito en este documento) Agregar una página al inicio para cada una de las siguientes secciones: ● Presentación: Título de la actividad, asignatura, semestre, código del alumno, nombre completo, nombre del docente, Nombre de la IES (UdeC), fecha. ● Introducción: repaso rápido sobre el contenido del documento ● Objetivos: de aprendizaje ● Justificación: Beneficio de aprendizaje ● Video de sustentación (el estudiante debe garantizar que el video no esté privado para que se pueda acceder, ver, escuchar y comentar) RECOMENDACIONES PARA DESARROLLAR LA ACTIVIDAD ● Lee cuidadosamente cada pregunta. ● Busca las respuestas por varios medios, indaga, cuestiona las respuestas, realiza inferencias, relación, conexión, comparaciones, similitudes, diferencias de conceptos, así es que se ejecuta el verdadero conocimiento y da como resultado la inteligencia y dejando a una lado la memorización temporal y deficiente. ● Realiza síntesis y redacta las respuestas con con esas síntesis, pero que sea generada por tu capacidad cerebral, de lo contrario estarías perdiendo de manera absurda tu valioso tiempo. ● Elabora el documento con las respuesta tomando como base este mismo documento, siguiendo el mismo orden y nomenclatura de las preguntas. ● Explica lo más importante un video en que sustentes los conocimientos adquiridos. Actividad 3: Inserción, Modificación y Eliminación de Datos en Bases de Datos SQL sobre MySQL Server 1. Introducción Comprender y practicar las distintas formas de insertar, modificar y eliminar datos en bases de datos SQL utilizando el SGBDR MySQL. 2. Objetivos de aprendizaje Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta ○ Comprender los conceptos fundamentales de inserción, modificación y eliminación de datos. ○ Analizar las distintas sintaxis y métodos que ofrece SQL y MySQL para realizar estas operaciones. ○ Aplicar los comandos de forma práctica en ejemplos simples y luego en su propio CEA (Caso de Estudio Académico). ○ Documentar el proceso y los resultados de manera técnica y clara. SECCIÓN 1. MARCO TEÓRICO 1. Operaciones DML en SQL El Lenguaje de Manipulación de Datos (DML) es una de las subcategorías más importantes del SQL (Structured Query Language). Permite interactuar directamente con los registros de una base de datos ya creada. Sus tres operaciones principales son: Tipo de operación Comando principal Propósito Inserción INSERT Agregar nuevos registros a una tabla. Modificación UPDATE Cambiar los valores de uno o varios campos. Eliminación DELETE Eliminar registros existentes. Estas operaciones pueden parecer simples, pero MySQL ofrece múltiples variantes y mecanismos avanzados para ejecutarlas de forma masiva, condicional, automatizada o basada en otras tablas. 1. Inserción de Datos (INSERT) Definición: Es la operación que permite agregar nuevos registros a una tabla existente. Comando base: INSERT INTO nombre_tabla VALUES (valor1, valor2, ...); Características técnicas: ● Afecta directamente la integridad referencial, por lo que las claves foráneas deben estar presentes o aceptarse como nulas. ● Puede insertar una fila, múltiples filas, o copiar registros desde otras tablas o vistas. ● En MySQL, también puede hacerse mediante archivos externos o procesos automatizados. Variantes más importantes: ● Inserción completa: se especifican todos los campos y valores. ● Inserción parcial: se insertan solo algunas columnas. Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta ● Inserción múltiple: permite insertar varios registros en un solo comando. ● Inserción masiva: se utilizan técnicas como LOAD DATA INFILE o scripts externos. ● Inserción por subconsulta: se usa un INSERT INTO ... SELECT ... para copiar datos desde otra tabla. ● Inserción automática: se realiza mediante disparadores (triggers) o procesos almacenados. 2. Modificación de Datos (UPDATE) Definición: Permite cambiar los valores de uno o varios campos en registros existentes. Comando base: UPDATE nombre_tabla SET columna = nuevo_valor WHERE condición; Características técnicas: ● Si no se usa una cláusula WHERE , el cambio se aplica a todas las filas de la tabla. ● Permite usar expresiones, subconsultas o funciones para generar los nuevos valores. ● Puede usarse para transferir información entre tablas relacionadas. Variantes más importantes: ● Actualización total: afecta todos los registros si no se usa cláusula WHERE ● Actualización parcial: modifica solo algunos campos o filas específicas que cumplan con la condición ● Actualización masiva: se combinan criterios y subconsultas para actualizar grandes volúmenes de datos. ● Actualización condicional: depende del valor de otra columna, o de otra tabla, o JOIN , o subconsulta oi Disparador 3. Eliminación de Datos (DELETE) Definición: Elimina registros existentes en una tabla. Comando base: DELETE FROM nombre_tabla WHERE condición; Características técnicas: ● El comando DELETE afecta registros, no estructuras. ● Puede combinarse con subconsultas o cláusulas JOIN Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta ● La eliminación puede disparar efectos en cascada (si existen claves foráneas con ON DELETE CASCADE ). Variantes más importantes: ● Eliminación parcial: se borra una o varias filas específicas que cumplan con los criterios una condición ● Eliminación total: se borra todo el contenido de la tabla (sin eliminar la tabla, registro por registro) o física (eliminando la tabla y reconstruyendola nuevamente) ● Eliminación masiva: se aplican criterios amplios como depender del valor de otra columna, o de otra tabla, o JOIN , o subconsulta o Disparador ● Eliminación por cascada: cuando se eliminan registros relacionados en otras tablas mediante claves foráneas con ON DELETE CASCADE ● Comando alternativo: TRUNCATE TABLE elimina todos los registros sin posibilidad de reversión. SECCIÓN 2. EJEMPLOS PRÁCTICOS GUIADOS Paso 1. Creación de base de datos y usuario Crear una base de datos llamada Xyz CREATE DATABASE Xyz; 1. Crear un usuario llamado fulanitodetal CREATE USER 'fulanitodetal' @ 'localhost' IDENTIFIED BY '12345' ; 2. Asignar permisos de administrador sobre la base de datos Xyz GRANT ALL PRIVILEGES ON Xyz.* TO 'fulanitodetal' @ 'localhost' ; 3. Usar la base de datos con el usuario creado Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta USE Xyz ; 4. Paso 2. Creación de tablas relacionadas Crear dos tablas con una relación uno a muchos: CREATE TABLE clientes ( id_cliente INT AUTO_INCREMENT PRIMARY KEY , nombre VARCHAR ( 50 ), ciudad VARCHAR ( 50 ) ); CREATE TABLE pedidos ( id_pedido INT AUTO_INCREMENT PRIMARY KEY , id_cliente INT , producto VARCHAR ( 100 ), cantidad INT , FOREIGN KEY (id_cliente) REFERENCES clientes(id_cliente) ); Paso 3. Inserción de datos Insertar un registro en la tabla clientes INSERT INTO clientes VALUES ( NULL , 'John Arrieta' , 'Cartagena' ); Mostrar los registros: SELECT * FROM clientes; ● Inserta tres registros en la tabla clientes usando inserción completa y muestra el contenido de la tabla ● Inserta tres registros en la tabla Pedido usando inserción parcial y muestra el contenido de la tabla ● Inserta tres registros en la tabla clientes usando inserción múltiple y muestra el contenido de la tabla ● Inserta tres registros en la tabla Pedidos usando inserción con subconsulta y muestra el contenido de la tabla ● Crea un archivo CSV con más registros y usa LOAD DATA INFILE para insertarlos masivamente y muestra el contenido de la tabla Documenta cada inserción con evidencia y una breve explicación técnica (Recuerda que es obligatorio colocar screenshot de la zona donde se ingresa el comando y el resultado del mismo) Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta Paso 4. Modificación de datos Modificar un registro en la tabla clientes UPDATE clientes SET ciudad = 'Barranquilla' WHERE id_cliente = 1 ; Mostrar los registros: SELECT * FROM clientes; ● Modifica un campo individual (nombre o ciudad) y muestra el contenido de la tabla ● Actualiza masivamente la columna “ciudad” para todos los registros y muestra el contenido de la tabla ● Usa un UPDATE ... JOIN para modificar datos en función de otra tabla y muestra el contenido de la tabla Documenta cada inserción con evidencia y una breve explicación técnica (Recuerda que es obligatorio colocar screenshot de la zona donde se ingresa el comando y el resultado del mismo) Paso 5. Eliminación de datos Eliminar un registro de la tabla clientes DELETE FROM clientes WHERE id_cliente = 1 ; ● Elimina un cliente específico y muestra el contenido de la tabla. ● Elimina un cliente que tenga relacionado al menos un pedido, explica el resultado. ● Elimina pedidos de una fecha determinada y muestra el contenido de la tabla. ● Aplica una eliminación en cascada y explica el resultado y muestra el contenido de la tabla. ● Elimina todos los registros de la tabla Pedidos de manera secuencial ● Elimina todos los registros de la tabla Clientes de manera eficiente (comando alternativo) Documenta cada inserción con evidencia y una breve explicación técnica (Recuerda que es obligatorio colocar screenshot de la zona donde se ingresa el comando y el resultado del mismo) SECCIÓN 4. APLICACIÓN EN EL CASO ACADÉMICO (CEA) Cada estudiante debe aplicar lo aprendido en su propio Caso de Estudio Académico (CEA) : 1. Inserta datos en todas las tablas del CEA, utilizando todas las formas de inserción investigadas. 2. Modifica datos en todas las tablas del CEA, utilizando todas las formas de actualización investigadas. Actividad Unidad 4 - Protocolo individual Asignatura : Bases de datos 1 Programa : Ingeniería del software IES : Universidad de Cartagena Tutor : John Carlos Arrieta Arrieta 3. Elimina datos en todas las tablas del CEA, utilizando todas las formas de eliminación investigadas. 4. Incluye capturas de cada operación realizada (comando + resultado). 5. Explica brevemente qué forma aplicaste, por qué la elegiste y qué efecto tuvo. SECCIÓN 5. REFLEXIÓN FINAL 1. ¿Qué diferencias observas entre insertar, modificar y eliminar datos en MySQL? 2. ¿Qué errores cometiste durante la práctica y cómo los corregiste? 3. ¿Qué forma de inserción o modificación te resultó más útil o eficiente? 4. ¿Qué precauciones deben tenerse antes de ejecutar comandos DELETE o UPDATE ? 5. ¿Cuál de las tres operaciones (INSERT, UPDATE, DELETE) consideras más delicada o propensa a errores? 6. ¿Qué precauciones deberías aplicar antes de ejecutar un UPDATE o DELETE sin condición WHERE ? 7. ¿Cómo estas operaciones pueden afectar la integridad referencial de la base de datos? 8. ¿Qué prácticas recomiendas para realizar inserciones, modificaciones y eliminaciones seguras? 9. ¿Qué aprendizajes conceptuales, técnicos y prácticos te dejó esta experiencia? PRODUCTOS A ENTREGAR ● Documento con el desarrollo de la actividad elaborado sobre el mismo documento que describe la actividad (Este documento) sin alterar ninguna punto, pregunta o numeración secuencial ○ Desarrollo completo de todas las secciones. ○ Capturas de pantalla (comandos + resultados). ○ Explicaciones breves en cada ejercicio. ● Script SQL (.sql ) con todas las instrucciones ejecutadas. ● Video donde el estudiante explica su experiencia, errores comunes y aprendizajes, demostrando la ejecución de algunos punteros por cada tema