T-SQL C # как блокировка - PullRequest
       22

T-SQL C # как блокировка

2 голосов
/ 27 апреля 2011

В C # мы можем сделать набор операций атомарным, используя блокировки:

lock (syncLock)
{
    // Do something 1
    // Do something 2
    // ...
}

Теперь в T-SQL я хочу то же самое со строкой.Я должен сделать некоторые вычисления, и я не хочу никаких изменений в строке, пока мои вычисления не будут закончены.Я знаю, что блокировка должна быть минимизирована, и я сделал это.

Также вся операция читается (без записи), поэтому нет необходимости в транзакции.

LOCK
SELECT statement on a single row
// Some calculations here...
IF ... RETURN
End of LOCK

Я знаю о ROWLOCK, и я могу использовать его с моим оператором выбора.Но мне также нужен замок для расчета строк.Есть ли что-то вроде C# скобок в T-SQL или BEGIN LOCK, END LOCK, как у входа / выхода из монитора?

Ответы [ 2 ]

5 голосов
/ 27 апреля 2011

НАЧАЛО СДЕЛКИ TranName;

.. Ваши вещи

СОВЕРШЕНИЕ СДЕЛКИ TranName;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...