Blokowanie rekordu bazy danych do edycji
Mam bazę danych SQL Server 2008 i nakładkę asp.net.
Chciałbym wdrożyć blokadę, gdy użytkownik aktualnie edytuje rekord, ale nie jest pewien, które podejście jest najlepsze.
Moim pomysłem jest miećisLocked
kolumna rekordów i zostaje ustawiona na true, gdy użytkownik wyciąga ten rekord, co oznacza, że wszyscy inni użytkownicy mają dostęp tylko do odczytu, dopóki pierwszy użytkownik nie zakończy edycji.
Jednak co, jeśli sesja skończy się, a on / ona nigdy nie zapisuje / aktualizuje rekordu, rekord pozostanieisLocked = true
, co oznacza, że inni nie mogą go edytować, prawda?
Jak mogę zrealizować jakiś czas sesji i miećisLocked
ustaw automatycznie na false, gdy sesja przekroczy limit czasu (lub po określonym czasie)
Czy powinno to być zaimplementowane po stronie asp.net lub po stronie SQL?