Bonjour à tous,

Je cherche à créer un trigger qui permet d'empêcher la suppression ou la modification d'une ligne dans une table et qui, lorsqu'il se déclenche, aille écrire la requête qui a déclenché le trigger dans un fichier texte...

J'ai recherché dans de nombreux forums et je n'ai pas trouvé ma réponse. Est-ce que c'est possible ou non ? Si oui, comment ?

Je vous joint le code de mon trigger :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
create or replace trigger TRIG_TEST before delete or update on TTEST
declare
  file_handle UTL_FILE.FILE_TYPE;
begin
  file_handle := UTL_FILE.FOPEN('LOG_DIR','fichier.log','w');
  UTL_FILE.PUT_LINE(file_handle,'Tentative de mise a jour ou de suppression sur la table TTEST');
  UTL_FILE.FFLUSH(file_handle); 
  UTL_FILE.FCLOSE(file_handle);
  raise_application_error(-20000,'Vous ne pouvez pas supprimer ou modifier une ligne');
end;
Ce code fonctionne mais je cherche à mettre la requete qui déclenche ce trigger à la place de la phrase "Tentative de mise a jour ou de suppression sur la table TTEST".

Je suis sous oracle 10gR2

Merci d'avance de votre aide !