DROP TABLE — Supprimer une table
DROP TABLE [ IF EXISTS ] nom
[, ...] [ CASCADE | RESTRICT ]
DROP TABLE
supprime des tables de la base de données.
Seuls le propriétaire de la table, le propriétaire du schéma et un
superutilisateur peuvent détruire une table. DELETE
et TRUNCATE
sont utilisées
pour supprimer les lignes d'une table sans détruire la table.
DROP TABLE
supprime tout index, règle, trigger
ou contrainte qui existe sur la table cible. Néanmoins, pour supprimer une
table référencée par une vue ou par une contrainte de clé étrangère d'une
autre table, CASCADE
doit être ajouté. (CASCADE
supprime complètement une vue dépendante mais dans le cas de la clé
étrangère, il ne supprime que la contrainte, pas l'autre table.)
IF EXISTS
Ne pas renvoyer une erreur si l'agrégat n'existe pas. Un message d'avertissement est affiché dans ce cas.
nom
Le nom de la table à supprimer (éventuellement qualifié du nom du schéma).
CASCADE
Les objets qui dépendent de la table (vues, par exemple) sont automatiquement supprimés, ainsi que tous les objets dépendants de ces objets (voir Section 5.15).
RESTRICT
La table n'est pas supprimée si un objet en dépend. Comportement par défaut.
Supprimer les deux tables films
et
distributeurs
:
DROP TABLE films, distributeurs;
Cette commande est conforme au standard SQL. Cependant, le standard
n'autorise pas la suppression de plusieurs tables en une seule commande.
De plus, l'option IF EXISTS
est une extension de
PostgreSQL.