Suche…


Einführung

Ereignisauslöser werden immer dann ausgelöst, wenn das ihnen zugeordnete Ereignis in der Datenbank auftritt.

Bemerkungen

Bitte verwenden Sie den untenstehenden Link für eine vollständige Übersicht der Ereignisauslöser in PostgreSQL

https://www.postgresql.org/docs/9.3/static/event-trigger-definition.html

DDL-Befehlsstartereignisse protokollieren

Ereignistyp-

  • DDL_COMMAND_START
  • DDL_COMMAND_END
  • SQL_DROP

In diesem Beispiel wird ein Ereignisauslöser erstellt und DDL_COMMAND_START Ereignisse protokolliert.

CREATE TABLE TAB_EVENT_LOGS(
  DATE_TIME TIMESTAMP,
  EVENT_NAME TEXT,
  REMARKS TEXT
);

CREATE OR REPLACE FUNCTION FN_LOG_EVENT()
  RETURNS EVENT_TRIGGER
  LANGUAGE SQL
  AS 
  $main$
    INSERT INTO TAB_EVENT_LOGS(DATE_TIME,EVENT_NAME,REMARKS)
      VALUES(NOW(),TG_TAG,'Event Logging');
  $main$;

CREATE EVENT TRIGGER TRG_LOG_EVENT ON DDL_COMMAND_START
  EXECUTE PROCEDURE FN_LOG_EVENT();


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow