Rechercher : dans
Par :

ORACLE 8.1.7 : Opérations d'un session SQL

Dernière réponse le 31 oct 2002 à 14:33:15 lediz, le 30 oct 2002 à 11:32:37 
 Signaler ce message aux modérateurs

Bonjour à tous,

j'essaye de créer un "select" qui me permettrait de retrouver toutes les opérations (select,insert,.....) "SQL" exécutées dans une session en particulier !!!!

J'ai essayé avec les objets "v$sqlarea,v$session,.........",
mais je n'y arrive pas.

Et ceci pour pouvoir lister et "tunner" les opérations effectuées dans une session d'un utilisateur.

En fait,c'est juste le lien entre une session et ses opérations que je n'arrive pas à faire.

J'arrive à avoir la liste des sessions (dans v$sessions et v$process)
---------------------------------------------------------------------------select sid SID,spid ORA_PID,process PGM_PID,s.USERNAME username,
substr(to_char(LOGON_TIME,'DD/MM/YYYY HH24:MI:SS'),1,22) connection_date
from v$session s,v$process p where paddr=addr order by connection_date
/

J'arrive à avoir la liste des opérations (dans v$sqlarea ou v$sqltext)
----------------------------------------------------------------------------select SQL_TEXT from v$sqlarea
/

J'arrive à faire le lien avec la colonne "SQL_ADDRESS" de v$session et "ADDRESS" de v$sqlarea;
mais si j'ai bien compris il s'agit de la DERNIERE opération.

Y-aurait'il une table intermédaire qui me permettrait de faire ce lien ? ou une autre technique ?

NB : Environnement = ORACLE 8.1.7

Merci pour votre aide

Meilleures réponses pour « ORACLE 8.1.7 : Opérations d'un session SQL » dans :
Oracle - Les séquences VoirCet article s'appuie sur la version 8.1.6 d'Oracle. Une séquence est un objet de base de données Oracle, au même titre qu'une table, une vue, etc... Autrement dit, il appartient à un utilisateur, on peut le manipuler, le modifier, à condition...
Son multicanal (5.1, 6.1, 7.1) VoirSon multicanal Le terme « son multicanaux » (parfois « multi-voies ») désigne l'utilisation de plusieurs pistes audio en vue de la restitution sur un système comportant plusieurs enceintes. Il existe une terminologie associée, constituée de...

1

yan, le 31 oct 2002 à 11:05:36

Ciao,
Essaie cette commande qui fonctionne sur la version 8.0.6.0.2:
"
select to_char(logon_time, 'DD/MM/YYYY HH24:MI:SS') , username, program, sql_text
from v$session , v$sqlarea
where v$session.sql_address = v$sqlarea.address
and sid = &sid
order by username, program
"
Elle te demande un sid que tu recupere dans la vue v$session

yan

Répondre à yan

2

lediz, le 31 oct 2002 à 11:51:40

Le problème est que ce "SELECT" ne renvoit que la DERNIERE commande pour un "SID" et non pas toutes les commandes !!!
(car le colonne "v$session.sql_address" contient l'adresse dans la dernière comnnande. De plus, il n'y a qu'un seul enregistrement" dans" v$session" par "SID" )

Lediz

Répondre à lediz

3

 yanban, le 31 oct 2002 à 14:33:15

Etr pourquoi pas utiliser l'audit trail ???

Répondre à yanban
Collection CommentÇaMarche.net