Sök…


Anmärkningar

En transaktion är en logisk arbetsenhet som innehåller ett eller flera steg, som var och en måste fullfölja framgångsrikt för att transaktionen ska kunna förpliktas till databasen. Om det finns fel, raderas alla datamodifieringar och databasen rullas tillbaka till dess ursprungliga tillstånd vid transaktionens början.

Enkel transaktion

BEGIN TRANSACTION
    INSERT INTO DeletedEmployees(EmployeeID, DateDeleted, User)
        (SELECT 123, GetDate(), CURRENT_USER);
    DELETE FROM Employees WHERE EmployeeID = 123;
COMMIT TRANSACTION

Återuppspelningstransaktion

När något misslyckas i din transaktionskod och du vill ångra den kan du återuppta transaktionen:

BEGIN TRY
    BEGIN TRANSACTION
        INSERT INTO Users(ID, Name, Age)
        VALUES(1, 'Bob', 24)
        
        DELETE FROM Users WHERE Name = 'Todd'
   COMMIT TRANSACTION
END TRY
BEGIN CATCH
   ROLLBACK TRANSACTION
END CATCH


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow