PL/SQL
    Il "Quarto" fuso ] The 4th Time Zone ]   


 

Perché questo nome?
vForth 1.0
Manuale Spectra Forth
PL/SQL
Download
L'autore


                                   

Ricompilazione oggetti invalidi 

Ecco un bel rompicapo: come fare per rendere validi gli oggetti che sono stati resi invalidi per qualunque motivo, tenendo conto delle dipendenze che esistono tra i vari oggetti del database. Ho realizzato uno script che potete scaricare che risolve il problema definitivamente.

Si tratta di un blocco PL/SQL che esamina il risultato della seguente query:

select O.owner, O.object_type, O.object_name, 
       D.referenced_owner, D.referenced_type, D.referenced_name,
       O2.status
from all_dependencies D
   , all_objects O
   , all_objects O2
where O.status = 'INVALID'
  and D.owner (+) = O.owner
  and D.type (+) = O.object_type
  and D.name (+) = O.object_name 
  and D.referenced_owner = O2.owner (+)
  and D.referenced_type = O2.object_type (+)
  and D.referenced_name = O2.object_name (+) 
  and O.owner = USER
order by O.timestamp

costruendo una tabella temporanea che elenca gli oggetti invalidi e le rispettive dipendenze; successivamente tale elenco viene percorso in modo da compilare gli oggetti nell'ordine corretto: si tratta quindi di una procedura ricorsiva che prima di ricompilare un oggetto verifica che gli eventuali oggetti dipendenti siano validi, eventualmente richiamando se stessa con argomento tale oggetto dipendente...

 

Ultimo aggiornamento: 10-12-2002. Copyright (c) 2000-2002 Matteo Vitturi. 
Per problemi o domande relativamente a questo sito contattare il webmaster
Last update: 12.10.2002. Copyright (c) 2000-2002 Matteo Vitturi.
For problems or questions related to this web please contact the webmaster.