Исходный код вики Шаблон транзакции

Версия 21.3 от Alexandr Fokin на 2023/12/16 14:12

Скрыть последних авторов
Alexandr Fokin 5.1 1
Alexandr Fokin 12.1 2 {{code language="sql"}}
Alexandr Fokin 1.1 3 BEGIN TRY
Alexandr Fokin 7.1 4
5 BEGIN TRANSACTION
Alexandr Fokin 15.1 6
Alexandr Fokin 16.1 7 --Формируем заказ
8 --...
9 --сформировали заказ
Alexandr Fokin 8.1 10
Alexandr Fokin 17.1 11 --Вычитаем купленные товары
12 update Products
13 Set Count = Count - 1
14 Where ID = @ProductID
Alexandr Fokin 19.1 15
Alexandr Fokin 7.1 16 COMMIT
Alexandr Fokin 1.1 17 END TRY
18 BEGIN CATCH
19
Alexandr Fokin 7.1 20 IF @@TRANCOUNT > 0
Alexandr Fokin 18.1 21 BEGIN
Alexandr Fokin 7.1 22 ROLLBACK TRANSACTION;
Alexandr Fokin 18.1 23 END;
Alexandr Fokin 13.1 24
25 THROW
Alexandr Fokin 5.1 26
Alexandr Fokin 20.1 27 END CATCH
Alexandr Fokin 13.1 28 {{/code}}
Alexandr Fokin 6.1 29