Bu, bilgimi arttırmak ruhu ile sorulan alçakgönüllü bir sorudur; lütfen cevabınızda nazik olun.
Uzun süreli bir uygulama geliştiricisi olarak, bir düzeyde bir işlemin ne olduğunu biliyorum (her zaman kullanıyorum). Şu an için işlem izolasyon seviyelerini bir kenara bırakarak, yüksek seviyede bir işlem, bir iş bloğunun tamamen tamamlanmasına veya hiç tamamlanmamasına izin verir ve diğer veritabanı değiştirici faaliyetlerden belirli bir miktarda izolasyona izin verir.
Ayrıca bir kilidin ne olduğunu (çeşitli veritabanlarında) ya da en azından bir kişinin nasıl davrandığını biliyorum (bir tabloyu açıkça bir şekilde kilitlersem, o zaman başka hiçbir işlem ya da iş parçacığı bu tablo hakkında bir şey güncelleyemez).
Ne en belirgin am değil temizlemek hakkındadır: Çeşitli veritabanlarında, ne zaman açıkça, bir satır veya bir tablo kilidi düzgün işlem çalışması için yorganın altında veritabanının işlem tesislerinin tarafından kullanılan aynı yapıları kullanan ben?
Yani, bir işlemin atomik ve izole olması için biraz kilitleme yapması gerekiyor. Bu işlem tarafından başlatılan, tranasction-hidden kilitleme, çeşitli veritabanlarının SELECT FOR UPDATE
açık LOCK
komutlar veya açık komutlar gibi yapılardan erişmeme izin verdiği kilitle aynı mı? Yoksa bu iki kavram tamamen farklı mı?
Yine bu sorunun saflığı için özür dilerim; Daha temel kaynaklara işaret etmekten mutluluk duyuyorum.