SQL Server ne zaman kilit alır?


10

Burada bulunan SQL Server'daki yalıtım düzeylerinin listesi, bir işlem içinde edinilen yazma kilitlerinin işlemin sonuna kadar saklandığını belirtir. Ancak bu kilitlerin ne zaman alındığı hakkında bir şey söylemez.

Kilitler varsayılan olarak bir işlemin başlangıcında mı, yoksa sadece gerektiğinde mi edinilir? İkincisi doğruysa, X işlemlerinin tutulma süresini en aza indirmek için büyük işlemlerde yazma işlemlerini mümkün olduğunca geç yapmak avantajlı olur mu?

Yanıtlar:


5

Kilitler varsayılan olarak bir işlemin başlangıcında mı, yoksa sadece gerektiğinde mi edinilir?

Kilitler okuma veya yazma gerçekleşmeden hemen önce alınır. Depolama motoru tarafından seçilen kilitleme ayrıntı düzeyine bağlı olarak, kilitler satır, sayfa, bölüm veya nesne (tablo) düzeyinde edinilebilir.

İkincisi doğruysa, X işlemlerinin tutulma süresini en aza indirmek için büyük işlemlerde yazma işlemlerini mümkün olduğunca geç yapmak avantajlı olur mu?

Evet, eşzamanlı işlemler tarafından kullanılan izolasyon seviyesine bağlı olarak eşzamanlılık için avantajlı olabilir.

İlgili okumalar:

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.