Как я могу использовать несколько запросов вставки / обновления / удаления в одной хранимой процедуре с транзакцией и откатом

Как я могу использовать несколько запросов вставки / обновления / удаления в одной хранимой процедуре с транзакцией и откатом?

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
299
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
CREATE PROCEDURE PROC (@TBL1 INT, @TBL2 INT, @TBL3 INT, @VALUE INT)
AS
BEGIN

    BEGIN TRY
        BEGIN TRANSACTION
            UPDATE  TBL1
            SET     COL1 = @VALUE
            WHERE   id = @TBL1

            UPDATE  TBL2
            SET     COL2 = @VALUE
            WHERE   id = @TBL2

            UPDATE  TBL3
            SET     COL3 = @VALUE
            WHERE   id = @TBL3
        COMMIT
    END TRY

    BEGIN CATCH
        IF @@TRANCOUNT > 0
        BEGIN
            ROLLBACK
        END
    END CATCH
END

Другие вопросы по теме