sys.dm_tran_transactions_snapshot (języka Transact-SQL)

Zwraca wirtualnej tabela dla sequence_number transakcji, które są aktywne przy uruchamianiu każdej transakcji migawka .Informacje, które jest zwracany przez tej mogą widoku możesz pomóc wykonaj następujące czynności:

  • Znajdź numer migawka aktualnie aktywnych transakcji.

  • Identyfikacja modyfikacji danych, które są ignorowane przez transakcję konkretnego migawka .Transakcja jest aktywny podczas uruchamiania transakcji migawka wszystkie zmiany danych przez transakcję, nawet po zatwierdzeniu tej transakcji są ignorowane przez transakcji migawka .

Na przykład, rozważmy następujące dane wyjściowe z sys.dm_tran_transactions_snapshot:

transaction_sequence_num snapshot_id snapshot_sequence_num
------------------------ ----------- ---------------------
59                       0           57
59                       0           58
60                       0           57
60                       0           58
60                       0           59
60                       3           57
60                       3           58
60                       3           59
60                       3           60

transaction_sequence_numkolumna identyfikuje numer sekwencyjny (XSN) transakcji bieżących transakcji migawka . Dane wyjściowe zawiera dwa: 59and 60.snapshot_sequence_numkolumna identyfikuje numer sekwencji transakcji transakcji, które są aktywne przy uruchamianiu każdej transakcji migawka .

Pokazuje dane wyjściowe tej transakcji migawka XSN 59 zostanie uruchomiony podczas dwóch aktywnych transakcji XSN 57 i XSN 58, są uruchomione.Jeśli XSN 57 lub XSN 58 modyfikacji danych, XSN 59 ignoruje zmiany i używa wersji wiersza do utrzymanie transakcyjnie spójności bazy danych.

Transakcji Snapshot XSN 60 ignoruje zmiany danych dokonane przez XSN 57 i XSN 58, a także XSN 59.

Składnia

dm_tran_transactions_snapshot

Zwracana tabela

Nazwa kolumny

Typ danych

Opis

transaction_sequence_num

bigint

Numer sekwencji transakcji (XSN) transakcji migawka .

snapshot_id

int

Migawkę identyfikator dla każdego Transact-SQL instrukcja rozpoczętych na mocy zadeklarowanej odczytu przy użyciu wersji wierszy.Ta wartość jest używana do generowania transakcyjnie jednolity widok bazy danych uzupełniających każda kwerenda uruchomienia w obszarze popełnionych odczytu przy użyciu wersji wierszy.

snapshot_sequence_num

bigint

Numer sekwencji transakcji, który był aktywny podczas uruchamiania transakcji migawka transakcji.

Uprawnienia

Wymaga uprawnienia Wyświetlanie stanu serwera na serwerze.

Uwagi

Po rozpoczęciu transakcji migawka Aparat baz danych rejestruje wszystkie transakcje, które są aktywne w tym czas.sys.dm_tran_transactions_snapshot raportowane dla wszystkich transakcji aktualnie aktywnych migawka .

Każda transakcja jest identyfikowany przez numer sekwencji transakcji, który jest przypisywany po rozpoczęciu transakcji.Transakcje start w czas rozpoczęcia transakcji lub rozpocząć pracę instrukcja jest wykonywana.Jednakże Aparat baz danych przypisuje numer sekwencji transakcji z wykonanie pierwszego Transact-SQL instrukcja uzyskuje dostęp do danych po instrukcji BEGIN TRANSACTION lub rozpocząć pracę instrukcja.Numery sekwencji transakcji jest zwiększany o jeden.