Oracle
 sql >> Database >  >> RDS >> Oracle

Creazione di un trigger da eseguire solo durante la creazione di una nuova tabella

CREATE OR REPLACE TRIGGER 
  create_table_trigger
  AFTER CREATE ON SCHEMA
BEGIN
  IF SYS.DICTIONARY_OBJ_TYPE = 'TABLE' THEN
      ....
END;

Per un elenco degli attributi EVENT, fare riferimento a questa pagina
http://ist.marshall.edu/ist480adbp/plsql_triggers.html (link is down)

Collegamento della macchina di ritorno al contenuto del link morto sopra:https://web.archive.org/web/20110809071133/http://ist.marshall.edu/ist480adbp/plsql_triggers.html

Per quanto ne so, dictionary_obj_type è uno diTABLE|SEQUENCE|PROCEDURE|INDEX|FUNCTION|TYPE|PACKAGE

E nome_oggetto_dizionario è solo il nome della tabella/sequenza/proc/ecc.

  • dictionary_obj_type Restituisce il tipo dell'oggetto dizionario su cui si è verificata l'operazione DDL che ha attivato il trigger.
  • dictionary_obj_name Restituisce il nome dell'oggetto dizionario su cui si è verificata l'operazione DDL che ha attivato il trigger.