Oracle
 sql >> база данни >  >> RDS >> Oracle

Как можете да видите какво ниво на изолация на транзакция използва произволна сесия на оракул

Можете да тествате бит 28 във flag колона в v$transaction [1] .

SELECT s.sid, s.serial#,
  CASE BITAND(t.flag, POWER(2, 28))
    WHEN 0 THEN 'READ COMMITTED'
    ELSE 'SERIALIZABLE'
  END AS isolation_level
FROM v$transaction t, v$session s
WHERE t.addr = s.taddr
  AND s.sid = :sid
  AND s.serial# = :serial;

Само не забравяйте, че v$transaction изброява само активни транзакции [2] ; например, трябва да издадете вмъкване/актуализация/изтриване/обединяване или да използвате „за актуализация“[3] .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Преобразуване на интервала в минути

  2. Oracle PL/SQL:Експортиране на данни от таблица в CSV

  3. История на блокиранията в Oracle?

  4. Преместване на данни от oracle към HDFS, обработка и преместване към Teradata от HDFS

  5. Преобразувайте SQL заявка, за да използвате оператори за набори