Możesz spróbować samemu, co powinno pomóc Ci zorientować się, jak to działa.
Otwórz dwa okna (zakładki) w studio zarządzania, każdy z nich będzie miał własne połączenie z sql.
Teraz możesz rozpocząć transakcję w jednym oknie, zrobić rzeczy takie jak insert/update/delete, ale jeszcze nie commit. następnie w drugim oknie możesz zobaczyć, jak wygląda baza danych spoza transakcji. W zależności od poziomu izolacji tabela może być zablokowana do czasu zatwierdzenia pierwszego okna lub możesz (nie) zobaczyć, co do tej pory zrobiła inna transakcja, itp.
Zabawa z różnymi poziomami izolacji i bez blokady podpowiedź, aby zobaczyć, jak wpływają one na wyniki.
Zobacz również, co się dzieje, gdy rzucisz błąd w transakcji.
Bardzo ważne jest, aby zrozumieć, jak te wszystkie rzeczy działają lub będziesz zaskoczony tym, co robi sql, wiele razy.
Miłej zabawy! GJ.
mmm, ok Rozumiem, że to tworzyło jakąś blokadę. Nie byłam pewna, czy zamknięcie połączenia rzeczywiście doprowadzi mnie do tego stanu. Problem polegał na tym, że podczas próby popełnienia błędu pojawił się błąd. teraz zamknąłem połączenie i wszystko działało. – Charbel
Uwaga boczna: Jeśli używasz Management Studio, zamknięcie okna zapytania spowoduje zamknięcie połączenia. –
Czy ponowne uruchomienie serwera (z powodu utraty mocy) również spowoduje wycofanie? – BradleyDotNET