IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Trigger before logoff ne se déclenche pas


Sujet :

PL/SQL Oracle

  1. #1
    r83
    r83 est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Points : 86
    Points
    86
    Par défaut Trigger before logoff ne se déclenche pas
    Bonjour,

    Voici mon trigger
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    create or replace 
    Trigger Trg_Logoff
    before logoff on system.schema
    Begin 
    	Insert Into Info_Logon (Basename, Instance,Utilisateur,Datelogon,Machine,Action)
    	Values(Ora_Database_Name, Ora_Instance_Num,Ora_Login_User,Sysdate, Ora_Client_Ip_Address, 'LOGOFF');
    end;
    j'ai le même after logon qui marche très bien.
    Le before logoff n'a pas l'air de se déclencher sous sqlplus en faisant disconnect ou en fermant une connexion sqldevelopper.

    Merci pour votre aide
    Cordialement

  2. #2
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    Je confirme que ça devrait fonctionner.

    J'ai testé ainsi :
    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
    create table info_logon(
    	basename varchar2(20), 
    	instance varchar2(20),
    	utilisateur varchar2(30),
    	datelogon date,
    	machine varchar2(30),
    	action varchar2(30));
     
    CREATE OR REPLACE 
    TRIGGER Trg_Logoff
    before logoff ON system.schema
    Begin 
    	INSERT INTO Info_Logon (Basename, Instance,Utilisateur,Datelogon,Machine,Action)
    	VALUES(Ora_Database_Name, Ora_Instance_Num,Ora_Login_User,Sysdate, Ora_Client_Ip_Address, 'LOGOFF');
    end;
    /
    Lorsque vous faites un DISCONNECT depuis une session SYSTEM dans SQL*Plus, vous n'avez aucune erreur ?

    Je peux suggérer de contrôler les points suivants :
    - existence d'un autre déclencheur BEFORE LOGOFF, mais qui serait invalide
    - alert.log
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

  3. #3
    r83
    r83 est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Points : 86
    Points
    86
    Par défaut
    Merci , je vais vérifier.
    Si je fais avec on database, le pb est le même :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    create or replace 
    Trigger Trg_Logoff
    before LOGOFF on database
    Begin 
    	Insert Into Info_Logon (Basename, Instance,Utilisateur,Datelogon,Machine,Action)
    	Values(Ora_Database_Name, Ora_Instance_Num,Ora_Login_User,Sysdate, Ora_Client_Ip_Address, 'LOGOFF');
     
    end;
    Je suis sur une 11GXE, le logon est bon,
    je précise que ce trigger marhait bien sur une 9i
    Merci pour les conseils.

  4. #4
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 460
    Points : 8 074
    Points
    8 074
    Par défaut
    Citation Envoyé par r83 Voir le message
    Je suis sur une 11GXE, le logon est bon,
    je précise que ce trigger marchait bien sur une 9i...
    Peut-être une particularité de la XE. Mais comme je ne pratique pas cette édition, je ne peux pas être affirmatif.
    Consultant / formateur Oracle indépendant
    Certifié OCP 12c, 11g, 10g ; sécurité 11g

    Ma dernière formation Oracle 19c publiée sur Linkedin : https://fr.linkedin.com/learning/oracle-19c-l-administration

  5. #5
    r83
    r83 est déconnecté
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 271
    Points : 86
    Points
    86
    Par défaut
    C'est bon, j'ai trouvé grace au alert.log que je n'avais pas consulté....
    ma colonne machine qui récupère l'adresse ip était en not null, et le logoff ne récupère pas l'adresse ip du client. donc il essayait d'insérer NULL dans une colonne NOT NULL.
    C'est surprenant car ce trigger fonctionnait en 9i

    Merci pour votre aide déterminante

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2005] [SQL] Trigger ne se déclenche pas sur NULL
    Par azzzad dans le forum Développement
    Réponses: 5
    Dernier message: 11/02/2013, 18h30
  2. Mon trigger ne se déclenche pas
    Par awalter1 dans le forum SQL
    Réponses: 4
    Dernier message: 23/01/2013, 15h57
  3. Réponses: 3
    Dernier message: 17/03/2011, 14h02
  4. Trigger qui ne se déclenche pas
    Par eowyn7 dans le forum Forms
    Réponses: 1
    Dernier message: 13/09/2007, 10h57
  5. [trigger] ... qui ne se déclenche pas
    Par bozo dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 14/01/2004, 11h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo