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.