Maison >base de données >Oracle >Quelle est l'instruction permettant à Oracle d'interroger la table de verrouillage ?
Dans Oracle, vous pouvez utiliser l'instruction select pour interroger l'instruction qui provoque le verrouillage de la table. Cette instruction est utilisée pour effectuer des requêtes simples sur les données de la table. La syntaxe est "select*from v$session t1,v$locked_object. t2 où t1.sid=t2.SESSION_ID" .
L'environnement d'exploitation de ce tutoriel : système Windows 10, version Oracle 11g, ordinateur Dell G3.
--Affichez l'instruction SQL 1 du processus de table de verrouillage :
--Associez la table d'objets verrouillés, la table d'objets de base de données et la table de session de données pour obtenir la session correspondant à l'objet verrouillé ;
select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode from v$locked_object lo, dba_objects ao, v$session sess where ao.object_id = lo.object_id and lo.session_id = sess.sid;
--Vérifiez l'instruction SQL du processus de verrouillage de la table 2 :
select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID;
--Vérifiez quelle instruction SQL a provoqué le verrouillage de la table
select l.session_id sid, s.serial#, l.locked_mode, l.oracle_username, s.user#, l.os_user_name, s.machine, s.terminal, a.sql_text, a.action from v$sqlarea a, v$session s, v$locked_object l where l.session_id = s.sid and s.prev_sql_addr = a.address order by sid, s.serial#;
--Tuez le processus de verrouillage de la table :
--Obtenez le SID et SID via le numéro de série de requête ci-dessus, remplacez les x, y suivants, vous pouvez déverrouiller l'état verrouillé
alter system kill session 'x,y';
Tutoriel recommandé : "Tutoriel vidéo Oracle"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!