Изменения документа Шаблон транзакции

Редактировал(а) Alexandr Fokin 2023/12/16 14:12

<
От версии < 7.1 >
отредактировано Alexandr Fokin
на 2020/01/24 14:36
К версии < 20.2 >
отредактировано Alexandr Fokin
на 2020/07/18 14:03
>
Изменить комментарий: Добавлен тег [SqlQuery]

Комментарий

Подробности

Свойства страницы
Теги
... ... @@ -1,0 +1,1 @@
1 +sql|SqlQuery
Содержимое
... ... @@ -1,29 +1,29 @@
1 1  
2 -
2 +{{code language="sql"}}
3 3  BEGIN TRY
4 4  
5 5   BEGIN TRANSACTION
6 -
7 - // Формируем заказ
8 - // ...
9 - // сформировали заказ
10 -
11 - // Вычитаем купленные товары
12 - update Products
13 - Set Count = Count - 1
14 - Where ID = @ProductID
6 +
7 + --Формируем заказ
8 + --...
9 + --сформировали заказ
15 15  
11 + --Вычитаем купленные товары
12 + update Products
13 + Set Count = Count - 1
14 + Where ID = @ProductID
15 +
16 16   COMMIT
17 -
18 18  END TRY
19 19  BEGIN CATCH
20 20  
21 21   IF @@TRANCOUNT > 0
22 - BEGIN
21 + BEGIN
23 23   ROLLBACK TRANSACTION;
24 - END;
25 -
26 - THROW
23 + END;
24 +
25 + THROW
27 27  
28 -END CATCH
27 +END CATCH
28 +{{/code}}
29 29  
XWiki.XWikiComments[0]
Комментарий
... ... @@ -1,1 +1,2 @@
1 1  Если выполняется 1 операция, то транзакция не требуется
2 +Она применяется автоматически. Этим можно управлять, используя with
XWiki.XWikiComments[1]
Автор
... ... @@ -1,0 +1,1 @@
1 +XWiki.cccc1808
Комментарий
... ... @@ -1,0 +1,3 @@
1 +Можно явно указать тип блокировки при выполнении запроса
2 +например для select.
3 +В таком случае блокировка указанного типа будет удерживаться до окончания транзакции.
Дата
... ... @@ -1,0 +1,1 @@
1 +2020-02-29 12:05:47.950