предговор
Днес ще изясня използването на тригери, въпреки че обикновено не се препоръчва да се използват тригери в проекти, но все пак трябва да разберем как се използват тригери.
Текст
Използване на тригери. Подгответе масата, която искате да използвате днес. Създайте таблица за NewTest и таблица за NewTest_log
#Тригери
Това е специална съхранена процедура, която не се призовава сама по себе си, а се докосва автоматично чрез изпълнение на определена операция, като събитие. Използвай: Следи действията и допълвай ограниченията. Във въведението се споменава, че спусъците обикновено не се препоръчват за работа и поддръжка. В реални проекти обикновено не е лесно да се забележи спусъкът, което води до определени трудности при по-късната поддръжка.
Всички наши операции върху данните от таблицата временно се съхраняват в тези две таблици,"Вмъкнато”,“изтрито”。 Можем да използваме тези две временни таблици, за да записваме някои данни или за ограничаване и модифициране на бизнеса.
Нека създадем тригер за таблицата NewTest:
След като създадем този тригер, нека изтрием данните от таблицата "изтрий от ADB.. NewTest", и след това попитайте "изберете * от ADB.. NewTestУстановено беше, че данните в тази таблица не са изтрити. Именно заради тригера, който създадохме, когато данните от таблицата бъдат изтрити, ще се задейства изявлението за добавяне на нови данни. Можем да използваме тригери, за да следим промените в данните от таблиците и да записваме съответните логове.
Създаваме тригер за таблицата NewTest и след добавяне на нови данни, ги записваме в съответната лог таблица:
Изпълнявайте нови изявления"ВМЪКНЕТЕ [dbo]. [NewTest] ( [Име], [Възраст], [Пол], [Количество]) СТОЙНОСТИ (Н'Сяохуанг', 18, Н'м', 20)Ще сме вътреNewTest_log"Таблицата също генерира запис, който записва времето на работа, типа операция и лицето, което е кацало, и т.н.
Как тогава да преценим в тригера, че данните са изтрити, модирани и добавени към операцията? Все още трябва да разгледам двете временни таблици – "вмъкнати" и "изтрити".
Нова операция: Има данни в вмъкнатата таблица, но няма данни в изтритата таблица. Операция Изтриване: В вмъкнатата таблица няма данни, а има данни в изтритата таблица. Промяна на операцията: Има данни в вмъкнатата таблица (нови данни) и има данни в изтритата таблица (стари данни).
Можем да използваме данните в тези две временни таблици, за да оценим съответните операции и след това да изпълним съответните бизнес операции
Епилог
Сладури, основата на базата данни приключи, а следващата част ще запише как да се възстановят данните след погрешно изтриване и промяна.
|