LOGON триггер: запрет подключения
Необходимо в триггере запретить подключаться к базе данных пользователям без прав суперадминистратора в нерабочее время, вызывая ошибку внутри тела триггера. Как можно сделать так, чтобы ошибка вызывалась внутри триггера? Если через try...catch, то как?
GO
CREATE TRIGGER connection_trigger
ON ALL SERVER
FOR LOGON
AS
BEGIN
IF IS_SRVROLEMEMBER ('sysadmin')=0 OR
DATEPART(year, GETDATE())=6 OR DATEPART(year, GETDATE())=7 OR
DATEPART(HOUR, GETDATE())>=18 OR DATEPART(HOUR, GETDATE())<9 OR DATEPART(HOUR, GETDATE())=13
ROLLBACK;
ELSE
print('Вы успешно зашли на сервер!')
END;