Eliminando tablas: DROP TABLE
DROP TABLE elimina una tabla completa de la base de datos, incluyendo toda su estructura y datos. Es una operación irreversible.
temp_data
idINTEGER
valueTEXT
✕
↓
DROP TABLE Tabla + datos eliminados Sintaxis básica
DROP TABLE nombre_tabla;DROP TABLE IF EXISTS
Para evitar errores si la tabla no existe, usa IF EXISTS:
DROP TABLE IF EXISTS nombre_tabla;Sin IF EXISTS, intentar eliminar una tabla que no existe provocará un error. Con IF EXISTS, la sentencia simplemente no hace nada si la tabla no existe.
Cuidado
DROP TABLE es destructivo e irreversible:
- Elimina la tabla y todos sus datos.
- En producción, siempre ten un respaldo antes de ejecutarlo.
- A diferencia de
DELETE(que elimina filas),DROP TABLEelimina la tabla entera.
Comparativa: DELETE vs DROP vs TRUNCATE
Estas tres sentencias eliminan datos, pero de formas muy diferentes:
| Característica | DELETE | DROP TABLE | TRUNCATE TABLE |
|---|---|---|---|
| ¿Qué elimina? | Filas (datos) | Tabla completa (datos + estructura) | Todas las filas (datos) |
| ¿Mantiene la tabla? | Sí | No | Sí |
| ¿Permite WHERE? | Sí | No | No |
| ¿Se puede revertir? | Sí (con transacciones) | No | Depende del motor |
| ¿Soporte en SQLite? | Sí | Sí | No |
¿Cuándo usar cada uno?
- Usa
DELETEcuando necesites eliminar filas específicas o todas las filas pero quieras conservar la estructura de la tabla. - Usa
DROP TABLEcuando quieras eliminar la tabla por completo, por ejemplo, al limpiar tablas temporales o reestructurar tu base de datos. - Usa
TRUNCATE TABLE(en otros motores como MySQL o PostgreSQL) cuando necesites vaciar una tabla entera de forma rápida. Es más eficiente queDELETEsinWHEREporque no registra la eliminación fila por fila. SQLite no soportaTRUNCATE, pero puedes lograr el mismo efecto conDELETE FROM tablasin cláusulaWHERE.
Nuestras tablas
En este ejercicio tenemos tres tablas:
Nombre de la Tabla: videogames
| id | title | developer | year | playtime_hours |
|---|---|---|---|---|
| 1 | The Legend of Zelda | Nintendo | 1986 | 20 |
| … | … | … | … | … |
| 12 | God of War | Santa Monica Studio | 2018 | 25 |
Nombre de la Tabla: old_games
| id | title |
|---|---|
| 1 | Pong |
| 2 | Space Invaders |
Nombre de la Tabla: temp_data
| id | value |
|---|---|
| 1 | test |