Sobes.tech
Junior — Middle

Puteți explica ce înseamnă o tranzacție în contextul SQL și cum funcționează?

sobes.tech AI

Răspuns de la AI

În contextul SQL, o tranzacție este o secvență de operațiuni asupra unei baze de date, care se execută ca o unitate unică. Tranzacția garantează că toate operațiunile din interiorul său fie finalizate cu succes sau niciuna dintre ele nu va afecta baza de date (atomicitate).

Proprietățile principale ale tranzacțiilor (ACID):

  • Atomicitate: toate operațiunile din tranzacție sunt executate complet sau deloc.
  • Consistență: după executarea tranzacției, baza de date rămâne într-o stare corectă.
  • Izolare: tranzacțiile paralele nu se influențează reciproc.
  • Durabilitate: după confirmarea tranzacției, modificările rămân chiar și în caz de defecțiuni.

Exemplu de utilizare a unei tranzacții în SQL:

BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;

Dacă apare o eroare în timpul procesului, se poate executa ROLLBACK; — astfel modificările vor fi anulate.