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

Oracle:Jak zjistit, zda existuje nevyřízená transakce?

můžete zkontrolovat, zda vaše relace obsahuje řádek v V$TRANSACTION (to samozřejmě vyžaduje oprávnění ke čtení v tomto zobrazení):

SQL> SELECT COUNT(*)
       FROM v$transaction t, v$session s, v$mystat m
      WHERE t.ses_addr = s.saddr
        AND s.sid = m.sid
        AND ROWNUM = 1;

  COUNT(*)
----------
         0

SQL> insert into a values (1);

1 row inserted

SQL> SELECT COUNT(*)
       FROM v$transaction t, v$session s, v$mystat m
      WHERE t.ses_addr = s.saddr
        AND s.sid = m.sid
        AND ROWNUM = 1;

  COUNT(*)
----------
         1

SQL> commit;

Commit complete

SQL> SELECT COUNT(*)
       FROM v$transaction t, v$session s, v$mystat m
      WHERE t.ses_addr = s.saddr
        AND s.sid = m.sid
        AND ROWNUM = 1;

  COUNT(*)
----------
         0


  1. Jak získat nejnovější záznam v každé skupině pomocí GROUP BY?

  2. Jak provést automatické zvýšení primárního klíče tabulky MySQL s nějakou předponou

  3. PLSQL JDBC:Jak získat ID posledního řádku?

  4. SQL Server Uživatelem definované funkce