sql >> Base de Datos >  >> RDS >> Oracle

Crear un disparador para que solo se ejecute cuando se crea una nueva tabla

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

Para obtener una lista de atributos de EVENTO, consulte esta página
http://ist.marshall.edu/ist480adbp/plsql_triggers.html (el enlace está caído)

Enlace de Wayback Machine al contenido del enlace muerto anterior:https://web.archive.org/web/20110809071133/http://ist.marshall.edu/ist480adbp/plsql_triggers.html

Hasta donde yo sé, dictionary_obj_type es uno de TABLE|SEQUENCE|PROCEDURE|INDEX|FUNCTION|TYPE|PACKAGE

Y dictionary_obj_name es solo el nombre de la tabla/secuencia/proc/etc.

  • tipo_obj_diccionario Devuelve el tipo de objeto de diccionario en el que se produjo la operación DDL que activó el activador.
  • dictionary_obj_name Devuelve el nombre del objeto de diccionario en el que se produjo la operación DDL que activó el activador.