Bonjour j'ai 1 pbleme assez complexe car
Je suis sur 1 base (base1) et j'ai un trigger qui quand il se déclenche exécute le code suivant sur une autre base(base2):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
BEGIN TRY 
INSERT INTO 
Base2..matable 
SELECT * FROM table1 
END TRY 
 
BEGIN CATCH 
INSERT INTO LOGS(requetes) VALUES('test') 
END CATCH
Il s'exécute bien quand la base base2 est normal (càd en mode lecture ecriture) mais quand je mets ma base2 en mode lecture seule, il ne génère pas d'exception mais génère plutot 1 erreur:

Msg 3930, Niveau 16, État 1, Procédure Versioning, Ligne 35
La transaction actuelle ne peut pas être validée et ne prend pas en charge les opérations qui écrivent dans le fichier journal. Restaurez la transaction.
L'instruction a été arrêtée
.

Je pense qu'il y'a pbleme au moment ou il ecrit dans le journal des transactions.Mais pourquoi quand j'exécute le code en ad hoc ou dnas 1 procedure stcokée ca marche et pas dans 1 trigger.