| Документация по PostgreSQL 9.4.1 | |||
|---|---|---|---|
| Пред. | Уровень выше | Глава 9. Функции и операторы | След. | 
9.28. Функции событийных триггеров
В текущей версии PostgreSQL представлена одна встроенная вспомогательная функция для событийных триггеров, pg_event_trigger_dropped_objects.
Функция pg_event_trigger_dropped_objects возвращает список всех объектов, удалённых командой, вызвавшей событие sql_drop. При вызове в другом контексте pg_event_trigger_dropped_objects выдаёт ошибку. pg_event_trigger_dropped_objects возвращает следующие колонки: 
| Имя | Тип | Описание | 
|---|---|---|
| classid | Oid | OID каталога, к которому относится объект | 
| objid | Oid | OID объекта в каталоге | 
| objsubid | int32 | Идентификатор подобъекта (например, номер для колонок) | 
| object_type | text | Тип объекта | 
| schema_name | text | Имя схемы, к которой относится объект; если объект не относится ни к какой схеме — NULL. В кавычки имя не заключается. | 
| object_name | text | Имя объекта, если сочетание схемы и имени позволяет уникально идентифицировать объект; в противном случае — NULL. Имя не заключается в кавычки и не дополняется именем схемы. | 
| object_identity | text | Текстовое представление идентификатора объекта, дополненного схемой. Компоненты этого идентификаторы могут заключаться в кавычки, если требуется. | 
Функцию pg_event_trigger_dropped_objects можно использовать в событийном триггере так: 
CREATE FUNCTION test_event_trigger_for_drops()
        RETURNS event_trigger LANGUAGE plpgsql AS $$
DECLARE
    obj record;
BEGIN
    FOR obj IN SELECT * FROM pg_event_trigger_dropped_objects()
    LOOP
        RAISE NOTICE '% dropped object: % %.% %',
                     tg_tag,
                     obj.object_type,
                     obj.schema_name,
                     obj.object_name,
                     obj.object_identity;
    END LOOP;
END
$$;
CREATE EVENT TRIGGER test_event_trigger_for_drops
   ON sql_drop
   EXECUTE PROCEDURE test_event_trigger_for_drops();Подробнее о событийных триггерах можно узнать в Главе 37.
| Пред. | Начало | След. | 
| Триггерные функции | Уровень выше | Преобразование типов | 

