Czy możemy wykorzystać transakcję w procedurze składowanej?
Czy możemy wykorzystać transakcję w procedurze składowanej?

Wideo: Czy możemy wykorzystać transakcję w procedurze składowanej?

Wideo: Czy możemy wykorzystać transakcję w procedurze składowanej?
Wideo: Stored Procecure, Transaction processing, Exception handling SQL Server 2024, Może
Anonim

Gdyby my mieć więcej niż jedną instrukcję SQL w wykonaniu w procedura składowana oraz my chcesz wycofać wszelkie zmiany wprowadzone przez którąkolwiek z instrukcji SQL w przypadku wystąpienia błędu z powodu jednej z instrukcji SQL, możemy wykorzystać transakcję w procedurze składowanej.

Czy procedury składowane są uruchamiane w transakcji?

Zagnieżdżone procedury składowane są wykonany w transakcja kontekst najbardziej zewnętrznego procedura składowana . To jest ustawienie domyślne. Zapewnia domyślne zachowanie opisane powyżej. Oznacza to, że wszystkie instrukcje SQL w a procedura składowana wykonaj jako singiel transakcja blok.

Poza powyższym, czy możemy użyć commita w procedurze? Ogólnie, procedury nie powinieneś popełniać . Jeśli ty popełniać wewnątrz przechowywanego procedura , ograniczasz możliwość ponownego użycia, ponieważ dzwoniący chce wprowadzić zmiany procedura sprawia, że bycie częścią większej transakcji nie może po prostu wywołać procedura bezpośrednio.

W związku z tym, czy możemy użyć transakcji w funkcji SQL?

1 odpowiedź. Dlatego transakcje są niepotrzebne dla sql -serwer Funkcje . Jednak ty Móc reszta transakcja poziom izolacji, na przykład możesz posługiwać się NOLOCK wskazówka, aby dotrzeć do „odczyt bez zobowiązań” transakcja poziom izolacji i odczytaj niezatwierdzone dane od innych transakcje.

Czy możemy używać zagnieżdżonych transakcji w SQL, jeśli tak, to w jaki sposób?

SQL Serwer tak naprawdę nie obsługuje transakcje zagnieżdżone . Tam jest tylko jeden transakcja na czas. Ten transakcja ma podstawowe zagnieżdżona transakcja licznik, @@TRANCOUNT. Każdy kolejny początek transakcja przyrosty ten licznik po jednym, każde zatwierdzenie transakcja zmniejsza go o jeden.

Zalecana: