Предположим, я подключаюсь к SQL Server 2008 через SQL Server Management Studio (SSMS) и открываю новое окно W1
, нажимая на вкладку Новый запрос, и пишу следующее в W1:
BEGIN TRANSACTION;
Если я выполню это утверждение 5 раз, а затем напишу (внутри W1
)
SELECT @@TRANCOUNT;
, тогда возвращаемое значение будет 5. Но если я открою другое окно W2
(внутри того же экземпляра SSMS и, следовательно, на том же соединении) и напишу внутри W2
SELECT @@TRANCOUNT;
тогда возвращаемое значение будет равно 0.
@@ TRANCOUNT переменная возвращает количество активных транзакций для текущего соединения.
Оба окна W1 и W2 были открыты для одного и того же соединения, поэтому не должны (согласно приведенной выше цитате) в переменных W1
и W2
@@ TRANCOUNT содержать одно и то же значение?
* 1023 спасибо *