Sobes.tech
Middle

Kaip veikia sandoriai SQL Server?

sobes.tech AI

Atsakymas iš AI

SQL Server, transakcija yra operacijų seka, vykdoma kaip vienetas. Transakcija garantuoja ACID savybes:

  • Atomiskumas: visos operacijos transakcijos viduje arba visiškai įvykdomos, arba visai ne.
  • Nuoseklumas: po transakcijos įvykdymo duomenų bazė lieka teisingoje būklėje.
  • Izoliacija: paralelios transakcijos viena į kitą neveikia.
  • Patvarumas: po patvirtinimo pakeitimai išlieka net ir gedimų atveju.

Transakcijos pradedamos su BEGIN TRANSACTION ir baigiamos su COMMIT (pateikiant pakeitimus) arba ROLLBACK (atšaukiant pakeitimus). SQL Server naudoja transakcijų žurnalą užtikrinti patikimumą ir atkūrimą.

Pavyzdys:

BEGIN TRANSACTION;
UPDATE Accounts SET Balance = Balance - 100 WHERE AccountID = 1;
UPDATE Accounts SET Balance = Balance + 100 WHERE AccountID = 2;
IF @@ERROR <> 0
    ROLLBACK TRANSACTION;
ELSE
    COMMIT TRANSACTION;