Oracle
 sql >> Base de données >  >> RDS >> Oracle

Supprimer une table dans Oracle SQL

Si vous êtes vraiment sûr de vouloir supprimer la table même si elle est référencée dans des clés étrangères, vous pouvez la forcer comme ceci :

drop table state cascade constraints;

Cette syntaxe est définie dans la référence Oracle SQL .

Notez que cela supprime toute relation de clé étrangère. Vous devrez donc les recréer après avoir reconstruit la table (et sa clé primaire). Normalement, cela convient car le cas d'utilisation le plus courant consiste à supprimer et à recréer des schémas dans des environnements de développement ou de CI.

Nous pouvons utiliser des cascade constraints pour faciliter la maintenance de nos scripts de construction. Il existe deux alternatives :

  1. Supprimer explicitement les contraintes de clé étrangère avant de supprimer les tables, soit avec un script, soit avec du SQL dynamique.
  2. Ordonnez les instructions DROPTABLE afin que les tables dépendantes soient supprimées en premier, avec leurs clés étrangères embêtantes. Assez facile pour une poignée de tables, plus pénible avec un grand schéma.