транзакции

Транзакция — это последовательное выполнение команд, которые должны выполниться или вместе, или не выполниться вообще.
Синтаксис
--начало транзакции
BEGIN TRANSACTION
 --инструкции
 --если ошибка
 IF(@@ERROR<>0)
 --откат транзакции
 ROLLBACK TRANSACTION
--конец транзакции
COMMIT TRANSACTION
 
Скрыть

Показать

Копировать
  Script.sql  
--выбор базы
USE zzz
GO
--создание таблицы
CREATE TABLE Book (
 IDBook INT NOT NULL PRIMARY KEY IDENTITY(1, 1),
 Name NVARCHAR(50) NOT NULL,
 Amount INT NOT NULL,
 Price MONEY NOT NULL
)
--вставляем данные
INSERT INTO Book(Name, Amount, Price) VALUES
('Букварь', 20, 20.25),
('География', 30, 30.35),
('Математика', 40, 40.45)
GO
--вывод данных
SELECT Name, Amount, Price FROM Book
--начало транзакции
BEGIN TRANSACTION
 UPDATE Book
 SET Amount = 50
 WHERE Name = 'Математика'
 --если ошибка
 IF(@@ERROR<>0)
 --откат транзакции
 ROLLBACK TRANSACTION
--конец транзакции
COMMIT TRANSACTION
--вывод данных
SELECT Name, Amount, Price FROM Book