Nehmen wir an, ich habe eine SQL Server 2000-Tabelle, jeder Name wird es tun, es ist für dieses Thema irrelevant. Auf dieser Tabelle habe ich einen Trigger, der nach dem Update oder Einfügen läuft.Kann ein Trigger in einem anderen Kontext als der Benutzer in SQL Server 2000 ausgeführt werden?
Der Benutzer kann die Tabelle einfügen und aktualisieren, an der der Trigger angehängt ist, jedoch nicht für andere Tabellen, auf die der Trigger abzielt.
Wenn der Benutzer Daten in der ursprünglichen Tabelle ändert, erhalte ich eine Ausnahme, die beschwert, dass der Benutzer nicht berechtigt ist, Daten in den Zieltabellen des Triggers zu ändern.
Ich nehme an, dass dies durch die Tatsache verursacht wird, dass der Auslöser im Kontext des Benutzers ausgeführt wird. Gibt es eine Möglichkeit, den Trigger in seinem eigenen Kontext laufen zu lassen oder interpretiere ich die Ursache dieser Ausnahme nicht richtig?
Edit: Ich sollte darauf hinweisen, dass ich SQL Server 2000 verwende, so dass die Verwendung von EXECUTE AS nicht funktioniert.
Hmm, okay, ich denke, das würde funktionieren. Also muss der separate Prozess ein geplanter Job sein, denke ich. Nicht wirklich wonach ich gesucht habe. – BenAlabaster