Sobes.tech
Junior — Middle

Môžete vysvetliť, čo sa rozumie pod transakciou v kontexte SQL a ako funguje?

sobes.tech AI

Odpoveď od AI

V kontexte SQL je transakcia sled operácií s databázou, ktorá sa vykonáva ako jedna celok. Transakcia zabezpečuje, že všetky operácie v nej budú úspešne dokončené alebo žiadna z nich nebude mať vplyv na databázu (atomickosť).

Hlavné vlastnosti transakcií (ACID):

  • Atomickosť: všetky operácie v rámci transakcie sa vykonajú úplne alebo vôbec.
  • Konzistencia: po vykonaní transakcie zostáva databáza v správnom stave.
  • Izolácia: paralelné transakcie sa navzájom neovplyvňujú.
  • Trvácnosť: po potvrdení transakcie zostávajú zmeny aj pri zlyhaní.

Príklad použitia transakcie v SQL:

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

V prípade chyby je možné vykonať ROLLBACK; — zmeny budú zrušené.