sql >> Databasteknik >  >> RDS >> Oracle

Skapar en trigger som endast körs när en ny tabell skapas

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

För en lista över EVENT-attribut, se den här sidan
http://ist.marshall.edu/ist480adbp/plsql_triggers.html (länken är nere)

Wayback-maskinlänk till innehållet i den döda länken ovan:https://web.archive.org/web/20110809071133/http://ist.marshall.edu/ist480adbp/plsql_triggers.html

Såvitt jag vet är dictionary_obj_type en avTABELL|SEKVENS|PROCEDUR|INDEX|FUNKTION|TYP|PAKET

Och dictionary_obj_name är bara namnet på tabellen/sekvensen/proc/etc.

  • dictionary_obj_type Returnerar typen av ordboksobjekt på vilken DDL-åtgärden som aktiverade utlösaren inträffade.
  • dictionary_obj_name Returnerar namnet på det ordboksobjekt på vilket DDL-operationen som aktiverade utlösaren inträffade.



  1. Hur RTRIM() fungerar i MariaDB

  2. Hur man beräknar glidande medelvärde i MySQL

  3. psql:FATAL:roll postgres existerar inte

  4. Det gick inte att hitta en ingångspunkt med namnet "InterlockedIncrement" i DLL:n "kernel32.dll" - [e-postskyddad] 64 bitar