Bir dizini için kilitleme özelleştirme

The SQL Server Veritabanı Altyapısı uses a dynamic locking strategy that automatically chooses the best locking granularity for queries in most cases.Sayfa ve tablo ya da dizin erişim desenler de anlaşılan ve tutarlı ve kaynak çekişme sorun çözmek için sürece, satır kilitleme sahip varsayılan kilitleme düzeyi geçersiz kılmayan öneririz.Bir kilitleme düzey geçersiz kılma önemli ölçüde bir tablo ya da dizin eşzamanlı erişim impede.Örneğin, yalnızca tablo düzey belirleme kilits, kullanıcılarının yoğun olarak büyük bir tablodaki kullanıcı tablo düzey için beklemeniz gerekir çünkü performans sorunlarına neden olabilir kilit tablo erişmeden önce yayımlanacak.

Burada sayfa veya satır kilitleme izin vermeme erişim desenler de anlaşılan ve tutarlı olması durumunda yararlı olabilir birkaç durum vardır.Örneğin, bir veritabanı uygulaması bir arama kullanır tablo , güncelleştirilir haftalık bir toplu iş iş işlemde.Eşzamanlı okuyucuları özel (x) kilit içeren tabloyu tablo (s) paylaşılan kilit ve haftalık toplu iş iş güncelleştirme erişimleri ile erişim.Sayfa ve satır kilitlemesi tablo üzerinde kapatmayı yükü hafta aynı anda paylaşılan tablo kilitleri ile tablo erişmek okuyucuları izin vererek kilitleme azaltır.toplu iş iş işlemi çalıştırıldığında, özel bir alacağı, güncelleştirme etkin bir şekilde tamamlayabilirsiniz tablo kilidi.

Sayfa ve satır kilitleme kapatma olabilir veya accep olabilirtablo haftalık toplu iş iş güncelleştirmenin eşzamanlı okuyucuları erişmesini engeller nedeniyle tablo güncelleştirme çalışırken.toplu iş iş iş, yalnızca birkaç satır veya sayfa değişirse, diğer oturumları okuyabilir sağlayan satır veya sayfa düzeynde kilitleme, izin vermek için kilitleme düzey değiştirebileceğiniz tablo engelleme olmadan.toplu iş iş iş, çok sayıda güncelleştirme varsa, bir özel elde etme kilit tablo üzerinde toplu iş iş olmanın en iyi yolu biter verimli olabilir.

Bazen bir ölükilit iki eş zamanlı işlemler satır aldığınızda ortaya kilitaynı tablo ve sonra b skilit her ikisi de gerektiğinden kilit sayfa.Satır kilitleri izin vermeme, beklenmesi gereken işlemlerden birini çıkmaz önleme zorlar.

Bir dizin kullanılan kilitleme taneciklik olabilir küme create INDEX ve alter INDEX deyimi kullanarak.kilit Dizin sayfaları ve Tablo sayfa ayarları uygulanır.Buna ek olarak, create table ve alter table deyimleri kullanılabilir küme birincil anahtar ve benzersiz kısıtlamaları üzerinde kilitleme taneciklik.İçin geriye dönük uyumluluk, sp_indexoption sistem saklı yordamı derinlik de ayarlayabilirsiniz.Belirli bir dizin için geçerli kilitleme seçeneği görüntülemek için INDEXPROPERTY kullanın işlev.Sayfa düzey kilitleri, satır düzeyinde kilit ya da sayfa düzey ve satır düzeyinde kilit birleşimi için verilen bir dizin izin verilmeyen.

İzin verilmeyen kilitleri

Dizin tarafından erişilen

Sayfa düzey

Satır düzey ve tablo düzey kilitleri

Satır düzey

Sayfa düzey ve tablo düzey kilitleri

Sayfa düzey ve satır düzey

Tablo düzey kilitleri