Użytkownicy a poziom izolacji bazy danych

0

Chciałem potwierdzić pewną rzecz o której słyszałem a której nie jestem pewien (i nie wiem gdzie to dokładnie sprawdzić).
Załóżmy, że mamy jakąś bazę danych w trybie izolacji co najmniej READ_COMMITTED i loguje się do niej dwóch użytkowników. Jeden dokonuje pewnych zmian na rekordach ale ich nie commituje natychmiast tylko wykonuje dalsze operacje. W tym momencie drugi użytkownik nie widzi tych nie committowanych zmian i może pobiera dane z tych rekordów (np. Select'em) w formie pierwotnej. Za to ten pierwszy użytkownik (z tego co słyszałem) gdy wykona Select podobno zobaczy te zmiany bo użytkownik widzi swoje (nawet) niecommittowane zmiany.
Czy to prawda?

0

Tak, to prawda. Użytkownik, który wprowadził zmiany widzi je, nawet jeśli nie zakończył transakcji poleceniem COMMIT. Z kolei drugi użytkownik zobaczy je dopiero po zakończeniu transakcji użytkownika pierwszego poleceniem COMMIT. W przypadku READ COMMITED drugi użytkownik zobaczy zmiany zatwierdzone przez pierwszego nawet jeżeli znajdował się cały czas (przed i po zmianach) w nieprzerywanej transakcji.

0

Dzięki

0

Też dzięki.

1 użytkowników online, w tym zalogowanych: 0, gości: 1