Junior — Middle
Wat is het doel van het gebruik van het isolatieniveau Repeatable Read in databasebeheersystemen?
sobes.tech AI
Antwoord van AI
Het isolatieniveau Repeatable Read is ontworpen om het fenomeen van niet-herhaalbare leesacties (non-repeatable read) te voorkomen. Dit betekent dat binnen één transactie het herlezen van dezelfde gegevens niet zal veranderen, zelfs als andere transacties proberen deze bij te werken.
Doelen:
- Zorgen dat de gegevens die aan het begin van de transactie zijn gelezen, ongewijzigd blijven tot het einde ervan.
- Voorkomen dat één transactie verschillende waarden ziet voor dezelfde records bij herhaalde lezingen.
Echter, met Repeatable Read kunnen phantom reads voorkomen, wanneer nieuwe rijen die aan de query-voorwaarde voldoen, verschijnen als resultaat van andere transacties.
In C# en .NET kan het Repeatable Read-niveau worden ingesteld bij het werken met transacties via TransactionScope of SqlTransaction.