|
|
Опубликовано 24.03.2019 21:20:05
|
|
|

предисловие
Сегодня я разберусь с использованием триггеров, хотя обычно не рекомендуется использовать триггеры в проектах, но нам всё равно нужно понять, как именно они применяются.
СМС
Использование триггеров. Приготовьте стол, который хотите использовать сегодня. Создайте таблицу NewTest и таблицу NewTest_log
#Триггеры
Это специальная сохранённая процедура, не вызываемая сама по себе, а автоматически затрагиваемая при выполнении определённой операции, например, события. Использовать: Отслеживайте действия и дополняйте ограничения. Во введении упоминается, что триггеры обычно не рекомендуются для работы и обслуживания. В реальных проектах обычно сложно заметить триггер, что может привести к определённым трудностям при дальнейшем обслуживании.
Все наши операции с данными таблицы временно хранятся в этих двух таблицах,"Вставлен”,“удалено”。 Мы можем использовать эти две временные таблицы для записи данных или для ограничения и модификации бизнеса.
Давайте создадим триггер для таблицы NewTest:
После создания этого триггера удалим данные таблицы "удалить из ADB.. NewTest", а затем запросить "выберите * из ADB.. NewTestБыло установлено, что данные в этой таблице не были удалены. Именно из-за созданного нами триггера при удалении данных таблицы срабатывает сообщение добавления новых данных. Мы можем использовать триггеры для мониторинга изменений в данных таблиц и записи соответствующих журналов.
Создаём триггер для таблицы NewTest, и после добавления новых данных мы логируем их в соответствующую таблицу журналов:
Выполняйте новые операторы»ВСТАВЬТЕ [dbo]. [NewTest] ( [Имя], [Возраст], [Пол], [Сумма]) ЗНАЧЕНИЯ (Н'Сяохуан', 18, Н'м', 20)Мы будем внутриNewTest_log«Таблица также генерирует запись, которая фиксирует время работы, тип операции, посадочного человека и т.д..
Итак, как мы оцениваем в триггере, что данные были удалены, изменены и добавлены в операцию? Мне всё ещё нужно посмотреть две временные таблицы — «вставленные» и «удаленные»
Новая операция: в вставленной таблице есть данные, но в удалённой таблице нет данных. Операция удаления: В вставленной таблице нет данных, а в удалённой таблице есть данные. Изменить операцию: В вставленной таблице (новые данные) есть данные, а в удалённой таблице (старые данные) есть данные.
Мы можем использовать данные из этих двух временных таблиц для оценки соответствующих операций и выполнения соответствующих бизнес-операций
Эпилог
Дорогие, основа базы данных подошла к концу, и в следующей части будет указано, как восстановить данные после ошибочного удаления и изменения по ошибке.
|
Предыдущий:Автоматический ввод с помощью ручки невозможно нажать для подтверждения операцииСледующий:200 книг, таких как электронные книги на Java и вопросы для интервью
|