/p>
Set @ @ f = 10 /* Привласнюємо їй значення */
IF NOT EXISTS (SELECT * FROM Відділи, inserted Відділи. Номер_отдела = inserted. Номер_отдела) @ @ f = 0EXISTS (SELECT * FROM Відділи, insertedinserted. Номер_отдела> 14 OR inserted. Номер_отдела <10) < i align = "justify">/* Якщо номер відділу НЕ> 14 або <10, то такий відділ не існує */
Set @ @ f = 0 /* Міняємо значення змінної */
If @ @ f = 0 /* якщо f = 0, значить були помилки */
BEGIN
PRINT В«Невірно введені даніВ» /* видача повідомлення про невдачу операції */
ROLLBACK TRANSACTION /* відкат (скасування) транзакції */
END
/* inserted - тимчасова таблиця, куди заносяться додаються дані */
3. Тригер, який записує при видаленні записів з таблиці В«ВикладачіВ» в окрему таблицю інформацію про дату видалення, користувача,
Перед створенням такого тригера необхідно створити таблицю DeletedItems, куди буде проводиться запис:
CREATE TABLE DeletedItem (
[Чітательскій_номер] [int] NOT NULL, /* оголошуємо поля таблиці */
[ім'я] [varchar] (25) NULL,
[по батькові] [varchar] (75) NULL,
[прізвище] [varchar] (25) NULL,
[посаду] [varchar] (35) NULL,
[Ім'я_користувача] [varchar] (50) NULL,
[Дата_удаленія] [datetime] NULL
) ON [PRIMARY]
Сам тригер виглядає наступним чином;
CREATE TRIGGER deletedby
ON Викладачі /* Зв'язуємо тригер з таблицею Викладачі */
FOR DELETEINTO DeletedItem
(Чітательскій_номер, ім'я, по батькові, /* вказуємо, які поля потрібно вставити */
прізвище, посаду, Ім'я_користувача, Дата_удаленія) Чітательскій_номер, ім'я, по батькові, прізвище, посаду,
SYSTEM_USER, /* функція визначає поточного користувача */
getdate () /* функція повертає поточну дату */
FROM deleted /* deleted - тимчасова таблиця, куди заносяться видаляються дані */
4. Тригер, який записує при додаванні записів у таблиці В«Сотруднікі_БібліотекіВ» в окрему таблицю інформацію про дату видалення, користувача.