/* @elimRestric */ /* 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 restricciones definidas sobre las tablas indicada interactivamente por el usuario. Se seleccionan todas las tablas cuyo nombre es LIKE 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. */ /* preguntar el nombre de la tabla y mostrar las restricciones definidas en ella */ SET LINESIZE 350 SET PAGESIZE 350 SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME LIKE UPPER('&&laTabla'); SET HEADING OFF SET HEADSEP OFF SET ECHO OFF SET FEEDBACK OFF UNDEFINE laTabla 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 WHERE TABLE_NAME LIKE UPPER('&&laTabla'); SPOOL OFF SET HEADSEP ON SET FEEDBACK ON SET HEADING ON SET ECHO ON UNDEFINE laTabla /* eliminar las restricciones de la tabla */ @tarea