Oracle - Pasar los sinonimos de public a privados de un esq

   
Vista:

Pasar los sinonimos de public a privados de un esq

Publicado por abeltran.uy (5 intervenciones) el 13/08/2009 20:06:24
DECLARE
nom_sinonimo dba_synonyms.synonym_name%type;

CURSOR cursor_sinonimos IS
select synonym_name from dba_synonyms where TABLE_OWNER = 'ESQUEMA' AND OWNER = 'PUBLIC';

BEGIN

OPEN cursor_sinonimos;
LOOP
fetch cursor_sinonimos into nom_sinonimo;
exit when cursor_sinonimos%notfound;

BEGIN
EXECUTE IMMEDIATE 'DROP PUBLIC SYNONYM ' || nom_sinonimo;
EXECUTE IMMEDIATE 'CREATE SYNONYM NUEVO_ESQUEMA.' || nom_sinonimo || ' FOR ESQUEMA.' || nom_sinonimo;

EXCEPTION
WHEN OTHERS THEN
NULL;
END;

END LOOP;
CLOSE cursor_sinonimos;

END;
/
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder