Создадим ограничение для таблицы "следователь"на ввод данных в таблицу. Ограничение на возраст следователя (нельзя ввести следователя, возраст которого меньше 18 лет и больше 80 лет). Для того чтобы создать ограничение на ввод возраста следователя, нужно создавать через триггер. (рис.3.8.1).

Рис. 3.8.1. Окно структуры триггера
Создадим триггер, выводящий сообщение "возраст следователя не подходит" при добавлении записи в таблицу "сотрудник" в столбец "дата_рождения".
В окне нового триггера набераю код как показано на рис. 3.8.2.

Рис. 3.8.2. Окно создания триггера в SQL запросе
Проверим работает ли данный триггер-ограничение. рис. 3.8.3.

Рис. 3.8.3. Данные в таблице "следователь"
И в после поля 9 вбиваем данные о следователе (рис. 3.8.4).

Рис. 3.8.4. Ошибка при вводе данных
После ввода данных в таблицу следователя Никифорчина С.Р.., где столбец "дата_рождения" вбито год рождение – 1900, и в данном случае следователю получается 112 лет, тем самым доказываю, что возраст следователь не подходит (рис. 3.8.5).

Рис. 3.8.5. Вывод об ошибке заполнения "возраст сотрудника не подходит"
В режиме скрипта SQL запрос выглядит так как показано на рис. 3.8.6

Рис. 3.8.6. Окно ограничения-триггера "TR_дата_рождения"через скрипт
CREATE TRIGGER [dbo].[TR_дата_рождения]
ON [dbo].[следователь]
for INSERT
AS
BEGIN
SET NOCOUNT ON;
If (select datediff(yy,дата_рождения,GETDATE()) from inserted)<18 or
(select datediff(yy,дата_рождения,GETDATE()) from inserted)>80
begin
print 'возраст сотрудника не подходит'
rollback
end
GO