sql >> Databáze >  >> RDS >> Oracle

Jak můžete vidět, jakou úroveň izolace transakcí používá libovolná relace oracle

Bit 28 můžete otestovat v flag ve sloupci 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;

Jen si pamatujte, že v$transaction uvádí pouze aktivní transakce [2] ; například musíte vydat insert/update/delete/merge nebo použít "for update"[3] .




  1. Vyberte stejný sloupec pro různé hodnoty v jiném sloupci

  2. Jak získat průměrný počet přístupů mezi aktuálním datem a datem zveřejnění v MySQL?

  3. TIMESTAMPDIFF v Oracle 11g?

  4. doktrína dbal querybuilder jako připravené prohlášení