/* @borraTodo.sql */ /* este script ilustra con un muy sencillo ejemplo la capacidad de SQLPLUS para realizar tareas complejas de forma automatizada y simple Sirve para eliminar todas las tablas, vistas y sinonimos definidos por el usuario. La idea es crear un fichero con las sentencias de eliminación que, posteriormente es ejecutado. Las sentencias se construyen a partir de la consulta adecuada. Aunque se intenta eliminar algunas restricciones, no se hace ninguna comprobación especial, por lo que puede producirse algun error al eliminar dterminados elementos */ SET LINESIZE 350 SET PAGESIZE 350 SELECT * FROM cat; SET HEADING OFF SET HEADSEP OFF SET ECHO OFF SET FEEDBACK OFF SPOOL tarea.sql /* generar las sentencias de eliminación con la informacion del diccionario */ SELECT 'ALTER TABLE ' || TABLE_NAME, ' DROP CONSTRAINT '||CONSTRAINT_NAME ||';' FROM USER_CONSTRAINTS; SELECT 'DROP TABLE '||TABLE_NAME ||';' FROM CAT WHERE TABLE_TYPE = 'TABLE'; SELECT 'DROP VIEW '||TABLE_NAME ||';' FROM CAT WHERE TABLE_TYPE = 'VIEW'; SELECT 'DROP SYNONYM '||TABLE_NAME ||';' FROM CAT WHERE TABLE_TYPE = 'SYNONYM'; SPOOL OFF SET HEADSEP ON SET FEEDBACK ON SET HEADING ON SET ECHO ON /* eliminar las tablas, vistas y sinonimos */ @tarea