Tema de la clase
- Inserción de datos (
INSERT) - Actualización de datos (
UPDATE) - Eliminación de datos (
DELETE) - Buenas prácticas en la manipulación de datos
Esta lección continúa con la base de datos escuela_unidad6 creada anteriormente y se trabajará utilizando MySQL Workbench y phpMyAdmin.
Propósito de la clase
Al finalizar la clase, el estudiante será capaz de:
- Insertar registros en una tabla correctamente.
- Modificar información existente sin afectar otros datos.
- Eliminar registros de forma controlada.
- Aplicar buenas prácticas para evitar pérdida o corrupción de datos.
1. Recordatorio del proyecto base
Trabajaremos con las tablas:
gruposalumnos
Relación:
- Un grupo puede tener muchos alumnos.
- Un alumno pertenece a un grupo.
2. INSERT – Insertar datos
El comando INSERT permite agregar nuevos registros a una tabla.
Sintaxis básica
INSERT INTO nombre_tabla (campo1, campo2, campo3)
VALUES (valor1, valor2, valor3);
Ejemplo con el proyecto
INSERT INTO grupos (nombre_grupo)
VALUES ('5C');
INSERT INTO alumnos (nombre, apellido, correo, id_grupo)
VALUES ('Pedro', 'Martínez', 'pedro@email.com', 1);
Insertar múltiples registros
INSERT INTO alumnos (nombre, apellido, correo, id_grupo)
VALUES
('Laura', 'Gómez', 'laura@email.com', 1),
('Jorge', 'Ruiz', 'jorge@email.com', 2);
Consideraciones importantes
- Respetar tipos de datos
- No violar restricciones (
NOT NULL,UNIQUE) - Respetar llaves foráneas
Si intentas insertar un id_grupo que no existe, MySQL mostrará un error por integridad referencial.
3. UPDATE – Actualizar datos
El comando UPDATE permite modificar registros existentes.
Sintaxis básica
UPDATE nombre_tabla
SET campo = valor
WHERE condicion;
Ejemplo
Actualizar el correo de un alumno:
UPDATE alumnos
SET correo = 'nuevo@email.com'
WHERE id_alumno = 1;
Actualizar múltiples campos
UPDATE alumnos
SET nombre = 'Juan', apellido = 'Ramírez'
WHERE id_alumno = 2;
Riesgo importante
Si no se usa WHERE, se modifican todos los registros:
UPDATE alumnos
SET nombre = 'ERROR';
Nunca ejecutes un UPDATE sin WHERE a menos que realmente quieras modificar toda la tabla.
4. DELETE – Eliminar datos
El comando DELETE elimina registros de una tabla.
Sintaxis básica
DELETE FROM nombre_tabla
WHERE condicion;
Ejemplo
Eliminar un alumno:
DELETE FROM alumnos
WHERE id_alumno = 3;
Riesgo importante
DELETE FROM alumnos;
Esto elimina todos los registros.
Un DELETE sin WHERE borra toda la información de la tabla.
5. Relación con integridad referencial
Si un registro está relacionado con otra tabla, puede haber restricciones al eliminarlo.
Ejemplo
Si un grupo tiene alumnos:
DELETE FROM grupos
WHERE id_grupo = 1;
Puede fallar porque hay alumnos relacionados.
Opciones de comportamiento
RESTRICT: No permite eliminarCASCADE: Elimina también los registros relacionadosSET NULL: AsignaNULLal campo relacionado