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

Oracle Discussion :

Capture requête SQL


Sujet :

Oracle

  1. #1
    Futur Membre du Club
    Profil pro
    IT ANALYST
    Inscrit en
    Mai 2004
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT ANALYST

    Informations forums :
    Inscription : Mai 2004
    Messages : 5
    Points : 7
    Points
    7
    Par défaut Capture requête SQL
    Bonjour

    J'ai besoin de créer un tigger (Oracle 10g) qui permet de capturer la moindre requête SQL lancée par utilisateur donné.
    Comment faire ?

    Merci

  2. #2
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    dans ce cas t'as plus vite fait de mettre la base en trace mais gare aux perfs

  3. #3
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    Citation Envoyé par medba
    Bonjour

    J'ai besoin de créer un tigger (Oracle 10g) qui permet de capturer la moindre requête SQL lancée par utilisateur donné.
    Comment faire ?

    Merci
    il n'existe pas de trigger pour les SELECT. Outre le TRACING, que tu peux activer pour cet utilisateur (--> DBMS_MONITOR), il y a la commande AUDIT qui peut t'aider

  4. #4
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Points : 4 926
    Points
    4 926
    Par défaut
    tu peux aussi consulter V$SQL

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 15
    Points : 24
    Points
    24
    Par défaut
    Grâce au package DBMS_FGA (par défaut c’est une propriété de sys dba)

    Il faut au préalable ajouter une police FGA avec le schéma, la table et éventuellement les colonnes à surveiller :

    exec dbms_fga.add_policy (object_schema=>'MON_SCHEMA',object_name=>'MA_TABLE_CLIENT',policy_name=>'Accès_aux_clients',audit_column => 'CHAMP_Nom_Client');

    A partir de ce moment si quelqu’un fait un select sur CHAMP_Nom_Client', on retrouvera sa trace dans la table dba_fga_audit_trail.

    Si on veut supprimer cette police il suffit de faire :

    exec dbms_fga.drop_policy (object_schema=>'MON_SCHEMA',object_name=>'MA_TABLE_CLIENT’,policy_name=>'Accès_aux_clients');

    Ce package accepte d’autres paramètres, comme par exemple une procédure stockée déclenchée par le select, ce qui revient à faire un trigger sur un select.

  6. #6
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    je ne connaissais pas ça... c'est pas mal du tout

Discussions similaires

  1. Requête SQL
    Par Leludo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/07/2024, 16h41
  2. [ DB2 ] [ AS400] requête sql
    Par zinaif dans le forum DB2
    Réponses: 6
    Dernier message: 23/08/2008, 20h42
  3. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 19h38
  4. A propos d'une requête SQL sur plusieurs tables...
    Par ylebihan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/09/2003, 17h26
  5. PB requète SQL avec Interbase
    Par missllyss dans le forum InterBase
    Réponses: 2
    Dernier message: 15/07/2003, 12h37

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