La instrucción DELETE en SQL se utiliza para eliminar filas de una tabla. Es una operación de manipulación de datos que permite eliminar datos específicos basados en una condición dada. Es importante usar esta instrucción con precaución, ya que una vez que los datos se eliminan, no se pueden recuperar fácilmente.

Sintaxis Básica

La sintaxis básica de la instrucción DELETE es la siguiente:

DELETE FROM nombre_tabla
WHERE condición;
  • nombre_tabla: El nombre de la tabla de la que deseas eliminar las filas.
  • condición: La condición que debe cumplirse para que las filas sean eliminadas. Si omites la cláusula WHERE, se eliminarán todas las filas de la tabla.

Ejemplo Práctico

Supongamos que tenemos una tabla llamada empleados con la siguiente estructura y datos:

id nombre puesto salario
1 Juan Desarrollador 50000
2 Ana Diseñadora 45000
3 Pedro Gerente 60000
4 María Desarrollador 52000

Eliminar una fila específica

Queremos eliminar al empleado con id igual a 2. La instrucción SQL sería:

DELETE FROM empleados
WHERE id = 2;

Después de ejecutar esta instrucción, la tabla empleados se verá así:

id nombre puesto salario
1 Juan Desarrollador 50000
3 Pedro Gerente 60000
4 María Desarrollador 52000

Eliminar múltiples filas

Si queremos eliminar todos los empleados que tienen el puesto de "Desarrollador", la instrucción SQL sería:

DELETE FROM empleados
WHERE puesto = 'Desarrollador';

Después de ejecutar esta instrucción, la tabla empleados se verá así:

id nombre puesto salario
3 Pedro Gerente 60000

Eliminar todas las filas

Para eliminar todas las filas de la tabla empleados, simplemente omitimos la cláusula WHERE:

DELETE FROM empleados;

Después de ejecutar esta instrucción, la tabla empleados estará vacía.

Ejercicios Prácticos

Ejercicio 1

Dada la siguiente tabla productos:

id nombre categoría precio
1 Laptop Electrónica 1000
2 Smartphone Electrónica 700
3 Silla Muebles 150
4 Mesa Muebles 300
  1. Elimina el producto con id igual a 3.
  2. Elimina todos los productos de la categoría "Electrónica".

Solución del Ejercicio 1

  1. Para eliminar el producto con id igual a 3:
DELETE FROM productos
WHERE id = 3;
  1. Para eliminar todos los productos de la categoría "Electrónica":
DELETE FROM productos
WHERE categoría = 'Electrónica';

Ejercicio 2

Dada la siguiente tabla clientes:

id nombre ciudad edad
1 Carlos Madrid 30
2 Laura Barcelona 25
3 Miguel Valencia 35
4 Ana Madrid 28
  1. Elimina todos los clientes que viven en "Madrid".
  2. Elimina todos los clientes de la tabla.

Solución del Ejercicio 2

  1. Para eliminar todos los clientes que viven en "Madrid":
DELETE FROM clientes
WHERE ciudad = 'Madrid';
  1. Para eliminar todos los clientes de la tabla:
DELETE FROM clientes;

Errores Comunes y Consejos

  • Olvidar la cláusula WHERE: Si olvidas la cláusula WHERE, eliminarás todas las filas de la tabla. Siempre verifica dos veces tu instrucción DELETE antes de ejecutarla.
  • Condiciones incorrectas: Asegúrate de que la condición en la cláusula WHERE sea correcta para evitar eliminar filas incorrectas.
  • Uso de transacciones: Para operaciones críticas, considera usar transacciones para poder deshacer los cambios si algo sale mal.

Conclusión

La instrucción DELETE es una herramienta poderosa para la manipulación de datos en SQL. Es fundamental entender su uso y las precauciones necesarias para evitar la pérdida de datos accidental. Con la práctica y la atención a los detalles, podrás utilizar DELETE de manera efectiva y segura.

Curso de SQL

Módulo 1: Introducción a SQL

Módulo 2: Consultas básicas de SQL

Módulo 3: Trabajando con múltiples tablas

Módulo 4: Filtrado avanzado de datos

Módulo 5: Manipulación de datos

Módulo 6: Funciones avanzadas de SQL

Módulo 7: Subconsultas y consultas anidadas

Módulo 8: Índices y optimización de rendimiento

Módulo 9: Transacciones y concurrencia

Módulo 10: Temas avanzados

Módulo 11: SQL en la práctica

Módulo 12: Proyecto final

© Copyright 2024. Todos los derechos reservados