LoslegenKostenlos starten

Tabellenüberwachung mit Triggern

Das Unternehmen hat beschlossen, Änderungen an allen wichtigsten Tabellen nachzuverfolgen. Eine dieser Tabellen ist Orders.

Jede Änderung am Inhalt von Orders soll in TablesAudit eingetragen werden.

Diese Übung ist Teil des Kurses

<Kurs>Trigger in SQL Server erstellen und optimieren</Kurs>
Kurs ansehen

Übungsanweisungen

  • Erstelle einen neuen AFTER-Trigger für die Tabelle Orders.
  • Richte den Trigger so ein, dass er bei INSERT-, UPDATE- und DELETE-Anweisungen ausgelöst wird.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

-- Add a trigger that tracks table changes
___ ___ OrdersAudit
ON Orders
___ INSERT, ___, ___
AS
	DECLARE @Insert BIT = 0;
	DECLARE @Delete BIT = 0;
	IF EXISTS (SELECT * FROM inserted) SET @Insert = 1;
	IF EXISTS (SELECT * FROM deleted) SET @Delete = 1;
	INSERT INTO ___ (TableName, EventType, UserAccount, EventDate)
	SELECT 'Orders' AS TableName
	       ,CASE WHEN @Insert = 1 AND @Delete = 0 THEN 'INSERT'
				 WHEN @Insert = 1 AND @Delete = 1 THEN 'UPDATE'
				 WHEN @Insert = 0 AND @Delete = 1 THEN 'DELETE'
				 END AS Event
		   ,ORIGINAL_LOGIN() AS UserAccount
		   ,GETDATE() AS EventDate;
Code bearbeiten und ausführen