Поиск…
замечания
Транзакция - это логическая единица работы, содержащая один или несколько шагов, каждая из которых должна быть успешно завершена, чтобы транзакция зафиксировала базу данных. Если есть ошибки, то все изменения данных стираются, и база данных возвращается в исходное состояние в начале транзакции.
Простая транзакция
BEGIN TRANSACTION
INSERT INTO DeletedEmployees(EmployeeID, DateDeleted, User)
(SELECT 123, GetDate(), CURRENT_USER);
DELETE FROM Employees WHERE EmployeeID = 123;
COMMIT TRANSACTION
Откат транзакции
Когда что-то не удается в коде транзакции и вы хотите его отменить, вы можете отменить транзакцию:
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
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow