DROP TABLE
DROP TABLE supprime définitivement une table, ses données, ses index et ses triggers. On le réserve aux tables temporaires ou aux migrations, jamais sans sauvegarde sur des données réelles.
- supprimer table
- DDL
- IF EXISTS
Syntaxe
DROP TABLE [IF EXISTS] nom;Exemple
CREATE TABLE import_tmp ASSELECT * FROM products WHERE category = 'Audio';DROP TABLE IF EXISTS import_tmp;SELECT nameFROM sqlite_schemaWHERE type = 'table'ORDER BY name;-- Jeu de données : boutique-- Une table de travail créée pour un import, puis supprimée-- Résultat attendu :-- customers-- order_items-- orders-- productsÀ retenir
- IF EXISTS évite une erreur quand la table n'existe pas, ce qui rend un script de migration rejouable.
- Pour vider une table en gardant sa structure, utilisez DELETE FROM table, pas DROP TABLE.
- Piège : SQLite ne vérifie pas les vues qui dépendent de la table. Elles restent en place et échouent à la prochaine lecture. PostgreSQL refuse le DROP, sauf avec CASCADE qui supprime aussi les vues.
- Avec PRAGMA foreign_keys = ON, DROP TABLE échoue si d'autres tables référencent encore des lignes de celle-ci.
Voir aussi
- CREATE TABLECREATE TABLE déclare une nouvelle table : ses colonnes, leurs types et les contraintes qui protègent les données. C'est la traduction concrète d'un modèle MLD en schéma de base.
- DELETEDELETE retire des lignes d'une table tout en conservant sa structure. On l'utilise pour purger des données obsolètes ou annulées, toujours avec un WHERE vérifié au préalable.
- CREATE VIEW (vues)Une vue est une requête enregistrée sous un nom, qu'on interroge ensuite comme une table. Elle évite de réécrire une jointure complexe et permet de n'exposer que certaines colonnes.