sql >> Databasteknik >  >> RDS >> Oracle

AUTONOMOUS_TRANSACTION

IMO autonoma transaktioner är särskilt anpassade för loggning:de körs oberoende av huvudsessionen, vilket innebär att du kan skriva i en tabell, utföra eller återställa ändringar utan att påverka huvudtransaktionen.

De tillför också lite overhead:om du kör stora uttalanden och lägger till en autonom transaktion mellan varje uttalande blir prestationskostnaden försumbar.

Det finns också en bieffekt som du kan tycka är intressant:eftersom de autonoma transaktionerna sker i oberoende sessioner från den anropande transaktionen, kan du följa fortskridandet av din huvudprocess när den körs. Du behöver inte vänta på att huvudtransaktionen ska avslutas:du kan fråga loggningstabellen eftersom den fylls av de autonoma transaktionerna.



  1. SQL Server-index - stigande eller fallande, vilken skillnad gör det?

  2. Uppdatera en tabell med JOIN i SQL Server?

  3. QPSQL-drivrutinen har inte laddats Qt

  4. Finns det ett ANSI SQL-alternativ till nyckelordet MYSQL LIMIT?