Si está realmente seguro de que desea descartar la tabla aunque se haga referencia a ella en claves externas, puede forzarla de esta manera:
drop table state cascade constraints;
Esta sintaxis se define en la referencia de Oracle SQL .
Tenga en cuenta que esto descarta cualquier relación de clave externa. Por lo tanto, deberá volver a crearlos después de haber reconstruido la tabla (y su clave principal). Normalmente, esto está bien porque el caso de uso más común es desechar y volver a crear esquemas en entornos de desarrollo o CI.
Podemos usar cascade constraints
para que nuestros scripts de compilación sean más fáciles de mantener. Hay dos alternativas:
- Elimine explícitamente las restricciones de clave externa antes de eliminar las tablas, ya sea con un script o con SQL dinámico.
- Ordene las sentencias DROPTABLE para que las tablas dependientes se eliminen primero, junto con sus molestas claves foráneas. Bastante fácil para un puñado de tablas, más doloroso con un esquema grande.