CommencezCommencez gratuitement

Audit de table à l'aide de déclencheurs

L'entreprise a décidé de suivre les modifications apportées à toutes les tables les plus importantes. L'une de ces tables est Orders.

Toute modification apportée au contenu de Orders doit être insérée dans TablesAudit.

Cette activité fait partie du cours

Création et optimisation de déclencheurs dans SQL Server

Voir le cours

Instructions de l’exercice

  • Créez un nouveau déclencheur AFTER sur la table Orders.
  • Configurez le déclencheur pour qu'il se déclenche pour les instructions INSERT, UPDATE et DELETE.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- 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;
Modifier et exécuter le code