Transazione (basi di dati): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m via cat. madre
Nessun oggetto della modifica
Riga 13:
* Se si sono eseguite tutte le operazioni senza riscontrare anomalie, si esegue un'istruzione detta di "'''commit'''", per confermare la transazione.
 
Se il DBMS riscontra internamente qualche anomalia, esegue automaticamente unaun rollback.
 
Se il DBMS stesso termina bruscamente, per intervento esterno, o per un bug, o per spegnimento improvviso del computer, il DBMS, quando viene riattivato, esegue automaticamente lail rollback delle transazioni che erano in corso al momento del crash.
 
Alcuni sistemi non prevedono un'istruzione di inizio transazione, perché quando ci si collega al DBMS, si inizia automaticamente una transazione, e quando si esegue unaun commit o unaun rollback, si inizia automaticamente un'altra transazione.
 
Se ci si scollega dal DBMS senza eseguire unaun commit, alcuni DBMS eseguono automaticamente unaun commit, altri unaun rollback.
 
Per implementare unaun transazione, tipicamente si usa un'apposita area d'appoggio del disco fisso in cui vengono copiati i dati originali appena prima di essere modificati.
Quando viene eseguita unaun commit, i dati originali copiati vengono eliminati.
Quando viene eseguita unaun rollback, si ricopiano indietro i dati originali copiati.
Pertanto, unaun commit è più efficiente di unaun rollback.
 
Una possibile causa del fallimento di una transazione è l'insufficienza di spazio d'appoggio per copiare i dati originali.