Sobes.tech
Junior — Middle

Můžete vysvětlit, co se rozumí transakcí v kontextu SQL a jak funguje?

sobes.tech AI

Odpověď od AI

V kontextu SQL je transakce sekvence operací s databází, která se provádí jako jedna celek. Transakce zaručuje, že všechny operace uvnitř ní budou úspěšně dokončeny nebo žádná z nich nebude mít vliv na databázi (atomickost).

Hlavní vlastnosti transakcí (ACID):

  • Atomickost: všechny operace uvnitř transakce jsou buď úplně provedeny, nebo vůbec.
  • Konzistence: po dokončení transakce zůstává databáze ve správném stavu.
  • Izolace: paralelní transakce se navzájem neovlivňují.
  • Trvalost: po potvrzení transakce zůstávají změny i při selhání.

Příklad použití transakce v SQL:

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

V případě chyby lze provést ROLLBACK; — změny budou zrušeny.