Gwarantowane, ponieważ w absolutnie żadnych okolicznościach nie można uzyskać wartości, która może być mniejsza lub równa aktualnej wartości maksymalnej? Nie, nie ma takiej gwarancji. To powiedziawszy, okoliczności, w których ten scenariusz może się wydarzyć, są ograniczone:
- Ktoś wyłącza wstawianie tożsamości i wstawia wartość.
- Ktoś ponownie umieszcza kolumnę tożsamości.
- Ktoś zmienia znak wartości przyrostu (tzn. zamiast +1 zmienia się na -1)
Zakładając, że żadna z tych okoliczności, nie jesteś bezpieczny w sytuacji wyścigu, tworząc sytuację, w której następna wartość jest niższa niż istniejąca wartość. To powiedziawszy, nie ma gwarancji, że wiersze zostaną zatwierdzone w kolejności ich wartości tożsamości. Na przykład:
- Otwórz transakcję, wstaw do tabeli z kolumną tożsamości. Powiedzmy, że otrzymuje wartość 42.
- Wstaw i zatwierdź w tej samej tabeli inną wartość. Powiedzmy, że otrzymuje wartość 43.
Dopóki pierwsza transakcja nie zostanie zatwierdzona, 43 istnieje, ale 42 nie. Kolumna tożsamości po prostu rezerwuje wartość, nie dyktuje kolejności zatwierdzeń.