Итак, у меня есть триггер, который предупреждает меня, когда кто-то вносит изменения в любую таблицу базы данных. Он работал, но внезапно он остановился ... база данных все еще может отправлять электронные письма (у меня есть больше триггеров все еще работает), и вставка в мою таблицу журналов работает, поэтому любая идея?SQL Server триггер не отправляет электронную почту
CREATE TRIGGER [_trALterTable]
ON DATABASE
FOR ALTER_TABLE, DROP_TABLE, CREATE_TABLE
AS
DECLARE @_SUBJECT NVARCHAR(MAX);
SELECT @_SUBJECT = EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)')
exec msdb.dbo.sp_send_dbmail
@profile_name = 'Notifications',
@recipients = '[email protected]',
@subject = @_SUBJECT,
@body = 'Changes on DB';
INSERT TriggerLog
SELECT @_SUBJECT, COALESCE(SUSER_SNAME(), USER_NAME()), GETDATE(), HOST_NAME() AS HostName;
GO
Любые сообщения в журнале почтовых ящиков базы данных? Или журнал SQL Server? – DMason
Nope :(Но я понял, что только изменения не отправляют электронные письма, а вставки в журнал происходят ... Я думаю, что переведу электронное письмо на другой триггер на этой вставке ... – Rafa
хорошо ... это сработало. но я думаю, что это своего рода грязный способ решить проблему ... в любом случае, если у кого-то есть идея, сообщите мне. – Rafa