Bonjour,

J'ai un petit problème. J'aimerais faire des enregistrement dans la table LOGS, qui sera ma table journal.

Le problème est que si à l'intérieur d'une transaction je fais des enregistrements dans la table LOGS, si je ROLLBACKe ma transation, les enregistrements de la table LOGS sont rollbackés également. Alors comment faire un ROLLBACK sans toucher à la table LOGS ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
BEGIN TRY
	BEGIN TRAN matransaction
 
	INSERT INTO LOGS VALUES ('Début Action 1')
	(action SQL 1)
 
	INSERT INTO LOGS VALUES ('Début Action 2')
	(action SQL 2)
 
	...
 
	INSERT INTO LOGS VALUES ('Début Action finale')
	(action SQL finale)
	INSERT INTO LOGS VALUES ('Success')
 
	COMMIT TRAN matransaction
END TRY
BEGIN CATCH
	ROLLBACK TRAN matransaction
	-- ici, en cas de problème tous mes enregistrements dans la table LOGS sont rollbackés
END CATCH