Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Bagaimana Anda bisa melihat tingkat isolasi transaksi yang digunakan sesi Oracle arbitrer?

Anda dapat menguji bit 28 di flag kolom di 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;

Ingatlah bahwa v$transaction hanya mencantumkan transaksi aktif [2] ; misalnya, Anda perlu mengeluarkan insert/update/delete/merge, atau gunakan "for update"[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. Operasi gabungan kueri Oracle sql?

  2. Hubungkan dengan klausa untuk mendapatkan puncak hierarki

  3. Riwayat basis data untuk penggunaan klien

  4. PDO_OCI - ke dalam bidang gumpalan

  5. Oracle SQL :Mengambil nilai yang tidak ada dari klausa IN