Oracle
 sql >> Database >  >> RDS >> Oracle

È richiesto COMMIT dopo ogni ESECUZIONE IMMEDIATA?

Le uniche volte in cui sei veramente costretto a impegnarti, a parte la fine di una transazione commerciale, sono:

  1. Durante l'esecuzione di DDL:l'esecuzione di DDL è racchiusa in una coppia di commit impliciti.
  2. Dopo l'inserimento diretto del percorso:la tabella non può essere letta finché non viene eseguito il commit dell'inserimento.

Come commenti ironici, il punto corretto su cui impegnarsi è quando la transazione commerciale è completa. Altrimenti, devi scrivere del codice per rilevare e correggere le transazioni parzialmente completate e impegnate che hanno lasciato il database è uno stato logicamente incoerente (ad es. Esiste un record INVOICE senza record INVOICE_DETAIL).