Изменения документа Шаблон транзакции
Редактировал(а) Alexandr Fokin 2023/12/16 14:12
<
>
отредактировано Alexandr Fokin
на 2020/01/24 14:34
на 2020/01/24 14:34
отредактировано Alexandr Fokin
на 2020/03/23 15:00
на 2020/03/23 15:00
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
-
Объекты (1 изменено, 1 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Теги
-
... ... @@ -1,0 +1,1 @@ 1 +sql - Содержимое
-
... ... @@ -1,27 +1,29 @@ 1 1 2 - BEGINTRANSACTION2 +{{code language="sql"}} 3 3 BEGIN TRY 4 - 5 - // Формируем заказ 6 - // ... 7 - // сформировали заказ 8 - 9 - // Вычитаем купленные товары 10 - update Products 11 - Set Count = Count - 1 12 - Where ID = @ProductID 13 13 14 -COMMIT 5 + BEGIN TRANSACTION 6 + 7 + --Формируем заказ 8 + --... 9 + --сформировали заказ 15 15 11 + --Вычитаем купленные товары 12 + update Products 13 + Set Count = Count - 1 14 + Where ID = @ProductID 15 + 16 + COMMIT 16 16 END TRY 17 17 BEGIN CATCH 18 18 19 - 20 - 21 - 22 - 23 - 24 - 20 + IF @@TRANCOUNT > 0 21 + BEGIN 22 + ROLLBACK TRANSACTION; 23 + END; 24 + 25 + THROW 25 25 26 -END CATCH 27 +END CATCH 28 +{{/code}} 27 27
- 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