DECLARE @ndayint
/* Устанавливаем значение переменной равным значению дня (day – стандартный параметр встроенной функции DatePart, выделяющей нужную часть даты – число месяца, для выделения месяца используется – month, для года - year) поля date «вводимой» таблицы, т.е. тех строк таблицы, которые будут вставляться либо редактироваться. «Вводимая» таблица имеет ту же структуру, что и основная, и стандартно именуется как inserted. */
SELECT @nday=DatePart(day, i.data_zakaza) FROM ZAKAZ t, inserted i
/* Для идентификации строк «вводимой» таблицы в запросе задается условие равенства ключевых полей основной и «вводимой» таблиц: */
WHERE t.nomer_zakaza=i.nomer_zakaza
/* Ограничение состоит в том, что день вводимой даты не может быть меньше 15: */
IF @nday<=15
/* При нарушении ограничения осуществляется откат транзакции обновления: */
BEGIN
ROLLBACKTRANSACTION
/* Для вывода сообщений об ошибке обычно используется инструкция RAISERROR, параметрами которой являются (в порядке следования): текст сообщения, уровень опасности (обычно устанавливается в пределах от 11 до 16), состояние информации (в пределах от 10 до 20) */
RAISERROR ('Дата меньше требуемой',16,20)
END
После ввода текста триггера осуществите проверку синтаксиса (кнопка CheckSyntax), сохраните триггер (кнопка ОК).
Для модификации существующего триггера выберите его из раскрывающегося списка в окне TriggerProperties.
(2)
Создание и модификация хранимой процедуры
Выберите в дереве Проводника пункт StoredProcedures и, активизируя всплывающее меню, дайте команду NewStoredProcedure. В появившемся окне StoredProcedureProperties в рабочую область выводится шаблон текста процедуры:
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.