Триггер - специальный объект, который должен выполнить действие, которое должно произойти при наступлении указанных условий
Триггеры между СУБД несовместимы
Уровни запроса триггеров
Строка - строки обрабатываются отдельно для каждой записи, триггер запускается отдельно, есть доступ к OLD NEW значениям
Уровень запроса/Уровень выражения - действуют сразу при выражении, инсерт и делитет - временные таблицы
Какие операции можно выполнять
Сложные каскадные операции -удаление, обновление
Обновление кэша
Проверка консинстентности данных
Контроль бизнес-логики (нельзя удалять посл админа)
Контроль сложной мощности между отношениями (1 к не более чем 3)
Проверки в БД (могут и триггеры, но чуть меньше, но чуть сложнее)
Контроль данных прямо на лету (ФИО 1я буква большая - проверка на лету)
МОГУТ ОЩУТИМО СНИЗИТЬ СКОРОТЬ РАБОТЫ БД
Триггеры могут срабатывать после разных операций
Используя Афтер мы экономим ресурсы СУБД - надо при ошибке отменять только триггер
Вызов созданной процедуры внутри триггера
Запрет на выполнение операции удаления посл админа
В ТРИГГЕРЕ МОЖНО СОЗДАТЬ ТЕКСТ ОШИБКИ
INSTEAD OF triggers.?