COMMIT (din engleză - „commit, commit”) este un operator SQL de control al tranzacțiilor pentru finalizarea cu succes a unei tranzacții. Când instrucțiunea este executată, modificările efectuate de la începutul tranzacției și care anterior nu erau vizibile pentru alte tranzacții sunt angajate în baza de date [1] .
Instrucțiunea ROLLBACK este utilizată pentru a anula toate modificările unei tranzacții . Aceste două declarații încheie în mod explicit tranzacția [2] .
Înainte de a executa un COMMIT, Oracle generează jurnalele de date undo (undo) și redo (redo) (pot fi chiar scrise pe disc). La executarea instrucțiunii COMMIT, tabelele de tranzacții ale înregistrărilor redo sunt marcate cu SCN ( numărul modificării sistemului , „ numărul modificării sistemului ”), bufferele de jurnal de redo sunt șterse pe disc (în această etapă, tranzacția este considerată finalizată), blocările sunt lansat, iar tranzacția este marcată ca finalizată [1] .
Se recomandă încheierea explicită a tranzacțiilor în aplicații folosind comenzile COMMIT WORK sau ROLLBACK WORK, în conformitate cu primul principiu ACID : o tranzacție trebuie să fie atomică . Dacă nu a fost făcută o înregistrare explicită a tranzacției și aplicația se încheie anormal, DBMS va derula înapoi ultima tranzacție nescrisă.
Pentru a adăuga un rând la MyTable și a salva modificarea, lansați următoarele comenzi:
ÎNCEPE LUCRAREA DE TRANZACȚIE ; INSERT INTO MyTable VALUES ( '50' , 'un şir' ); COMITEȚI MUNCĂ ;Bază de date | |
---|---|
Concepte |
|
Obiecte |
|
Chei | |
SQL |
|
Componente |