Megosztás a következőn keresztül:


Tranzakciók (Transact-SQL)

Vonatkozik a következőkre:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceRaktár a Microsoft Fabric-benSQL adatbázis a Microsoft Fabric-ben

A tranzakció egyetlen munkaegység. Ha egy tranzakció sikeres, a tranzakció során végrehajtott összes adatmódosítás véglegesítése végleges lesz, és az adatbázis állandó részévé válik. Ha egy tranzakció hibát tapasztal, és le kell mondania vagy vissza kell állítania, akkor az összes adatmódosítás törlődik.

Az SQL Server a következő tranzakciós módokon működik:

Tranzakciós mód Description
Automatikus feladatátvételi tranzakciók Minden egyes utasítás egy tranzakció.
Explicit tranzakciók Minden tranzakció kifejezetten az BEGIN TRANSACTION utasítással kezdődik, és explicit módon egy vagy COMMIT utasítással ROLLBACK fejeződik be.
Implicit tranzakciók Az új tranzakció implicit módon indul el, amikor az előző tranzakció befejeződik, de minden tranzakció explicit módon egy vagy COMMIT utasítással ROLLBACK fejeződik be.
Batch-hatókörű tranzakciók Csak kizárólag több aktív eredményhalmazra (MARS) alkalmazható, bármely, a MARS-munkamenetben elindított Transact-SQL explicit vagy implicit tranzakció a munkamenetre korlátozott hatókörű tranzakcióvá válik. Az SQL Server automatikusan visszaállít egy köteg hatókörű tranzakciót, amelyet a rendszer nem véglegesített vagy visszagördített a köteg befejezésekor.

Az adattárház-termékekkel kapcsolatos speciális szempontokat lásd: Tranzakciók a Fabric Data Warehouse-ban vagy tranzakciókban (Azure Synapse Analytics).

Tranzakcióvezérlés szintaxisa

Az SQL Database Engine a következő tranzakciós utasításokat biztosítja: