Inicio » Scripts sql curiosos » Crear un script para recrear los sinónimos de un usuario

Crear un script para recrear los sinónimos de un usuario

SPOOL &1/CreateSyn&2..sql
SELECT ‘set heading off’ FROM DUAL;
SELECT ‘set verify off’ FROM DUAL;
SELECT ‘set feedback off’ FROM DUAL;
SELECT ‘set echo off’ FROM DUAL;
SELECT ‘set linesize 120’ FROM DUAL;
SELECT ‘SET TERMOUT OFF’ FROM DUAL;
SELECT ‘SPOOL &1/DropSynonyms.sql’ FROM DUAL;
SELECT
‘SELECT ‘||»»||’DROP PUBLIC SYNONYM ‘||
»»||’|| SYNONYM_NAME ||’||»»||’;’||»»||
‘ FROM  DBA_SYNONYMS ‘||
‘ WHERE TABLE_OWNER=UPPER(‘|| »»||’&2’||»»||’);’
FROM DUAL;
SELECT ‘spool off’ FROM DUAL;
SELECT ‘@&1/DropSynonyms.sql’ FROM DUAL;
SELECT ‘@@&5/parameters.sql’ FROM DUAL;
SELECT ‘spool &4/CreateSyn.log’ FROM DUAL;
SELECT  ‘SET TERMOUT ON’ FROM DUAL;
SELECT  ‘Prompt >>Creatting public synonym’ FROM DUAL;
SELECT  ‘SET TERMOUT OFF’ FROM DUAL;
SELECT    ‘CREATE PUBLIC SYNONYM ‘
       || synonym_name
       || ‘ FOR ‘
       || table_owner
       || ‘.’
       || table_name
       || ‘;’
  FROM dba_synonyms
 WHERE table_owner = upper(‘&2’);
SELECT ‘spool off’ FROM DUAL;
spool off

Deja un comentario