sql >> Databasteknik >  >> RDS >> Oracle

Hur kan jag se om jag har oengagerat arbete i en Oracle-transaktion?

Om du inte har tillgång till v$session kan du använda

select dbms_transaction.local_transaction_id from dual;

Detta fungerar bara inifrån sessionen men behöver inte v$-privilegier. Om det returnerar en icke-null har du startat en transaktion. Det innebär normalt oengagerade förändringar, men det finns undantag. Om du utfärdade en räddningspunkt, ändrade data och rullade tillbaka till räddningspunkten, "lever" transaktionen fortfarande. Att använda databaslänkar startar också transaktioner, även bara för utvalda (eller de brukade göra det).



  1. Hur visar man alla privilegier från en användare i Oracle?

  2. Sortera efter datum och tid i fallande ordning?

  3. Skapa en PostgreSQL-sekvens till ett fält (som inte är postens ID)

  4. Neo4j Query Language - Cypher