Odczytywanie dokumentacji MS dla różnych transakcjitryby w SQL Server. Tryb Autocommit robi wszystko, co robi tryb transakcji niejawnej i jawnej z mniejszym kodem, dlaczego więc mam używać w moim kodzie trybów transakcji niejawnej i jawnej?
Odpowiedzi:
1 dla odpowiedzi № 1Transakcja Autocommit jest tylko dla pojedynczego zapytania. Jeśli potrzebujesz transakcji z wieloma zapytaniami, musisz użyć trybu transakcji niejawnej i jawnej.
0 dla odpowiedzi nr 2
Jak wiadomo, sqlserver automatycznie wykonał zadanie zatwierdzenia transakcji. Ale jakiś czas musimy zatwierdzić / wycofać na poszczególnych zasadach / logice / regułach biznesowych.
Na przykład mamy jedną tabelę główną i 3dziecko / szczegóły tabeli lub powiedzieć 1 lub więcej tabel podrzędnych. Przypuśćmy, że musimy zapisać wpis w tabeli wiodącej wraz ze wszystkimi tabelami szczegółów z odwołaniem do pk-id tabeli głównej. W każdym razie problem stanowi cały problem.
Dlatego w tym scenariuszu musimy użyć jawnej transakcji, aby zatwierdzić lub wycofać jako jednostkę pracy. Możemy użyć bloku try..catch do obsługi błędów i wycofania transakcji.
Jeśli nie użyjemy tej transakcji, to po każdym instrukcji insert sqlserver automatycznie zatwierdza wstawiony wiersz, a nie wycofuje go nigdy.