Предположим, у меня есть таблица SQL Server 2000, любое имя будет делать, это не относится к этой теме. В этой таблице есть триггер, который запускается после обновления или вставки.Может ли триггер запускаться в отдельном контексте, чем пользователь в SQL Server 2000?
Пользователь может вставлять и обновлять таблицу, на которой установлен триггер, но не на других таблицах, для которых запускается триггер.
Если пользователь изменяет данные в исходной таблице, я получаю исключение, жалующееся на то, что у пользователя нет разрешения на изменение данных в целевых таблицах триггера.
Я предполагаю, что это вызвано тем, что триггер работает в контексте пользователя. Есть ли способ запустить триггер в своем собственном контексте или я не правильно истолковываю причину этого исключения?
Редактировать: Я должен указать, что я использую SQL Server 2000, поэтому использование EXECUTE AS не будет работать.
Хм, хорошо, я думаю, что это сработает. Таким образом, отдельный процесс должен быть запланированным заданием, я думаю. Не совсем то, что я искал. – BenAlabaster