Wbudowana w SQL Server funkcja @@TRANCOUNT pozwala na wyświetlenie liczby otwartych transakcji w ramach obecnego połączenia z bazą danych. Aby rozpocząć transakcję korzystamy z polecenia BEGIN TRANSACTION, do zatwierdzenia rozpoczętej transakcji służy polecenie COMMIT TRANSACTION, z kolei anulować rozpoczętą transakcję należy skorzystać z polecenia ROLLBACK TRANSACTION.
Wykonanie polecenia
SELECT @@TRANCOUNT AS ilosc_transakcji
powinno zwrócić wartość 0, gdyż w momencie jego uruchomienia nie ma żadnych otwartych transakcji.
Aby zademonstrować działanie @@TRANCOUNT w praktyce spróbujmy więc: 1) sprawdzić ilość rozpoczętych transakcji; 2) rozpocząć transakcję; 3) sprawdzić ilość rozpoczętych transakcji; 4) anulować rozpoczętą transakcję; 5) sprawdzić ilość rozpoczętych transakcji. W tym celu skorzystajmy z polecenia:
Aby zademonstrować działanie @@TRANCOUNT w praktyce spróbujmy więc: 1) sprawdzić ilość rozpoczętych transakcji; 2) rozpocząć transakcję; 3) sprawdzić ilość rozpoczętych transakcji; 4) anulować rozpoczętą transakcję; 5) sprawdzić ilość rozpoczętych transakcji. W tym celu skorzystajmy z polecenia:
-- krok 1
SELECT @@TRANCOUNT AS ilosc_transakcji_krok1
-- krok 2
BEGIN TRANSACTION
-- krok 3
SELECT @@TRANCOUNT AS ilosc_transakcji_krok3
-- krok 4
ROLLBACK TRANSACTION
-- krok 5
SELECT @@TRANCOUNT AS ilosc_transakcji_krok5
Wynik
będzie następujący:
Powyższy przykład obrazuje, że przed rozpoczęciem transakcji, ilość rozpoczętych transakcji wynosiła 0, po rozpoczęciu jednej transakcji ilość wynosiła 1, a po jej zakończeniu ilość rozpoczętych transakcji wynosiła ponownie 0.
Brak komentarzy:
Prześlij komentarz