Dizin seçeneklerini ayarlama
Tasarlamak, oluşturmak veya bir dizini değiştirmek, göz önüne almanız gereken birkaç dizin seçenekleri vardır.Bu seçenekler, önce bir dizin oluşturduğunuzda veya bir dizini yeniden oluşturmak zaman belirtilebilir.Ayrıca, her saat ALTER INDEX deyim küme yan tümce kullanarak bazı dizin seçeneklerini ayarlayabilirsiniz.
Dizin seçeneği |
Açıklama |
Meta veriler saklı ayarlama |
İlgili konu |
---|---|---|---|
PAD_INDEX |
Boş alan yüzdesini, dizin oluşturma sırasında orta düzey sayfaları belirler. |
Evet |
|
FILLFACTOR |
Boş alan yüzdesini, dizin oluşturma sırasında her dizin sayfasının yaprak düzey ayarlar. |
Evet |
|
SORT_IN_TEMPDB |
Dizin oluşturma sırasında oluşturulan ara sıralama sonuçlar depolandığı belirler. ON, zaman içinde sıralama sonuçlar saklanırtempdb.Ne zaman OFF, sıralama sonuçlar elde edilen dizinin depolandığı dosya grubu veya bölümünü düzeninde depolanır.
Note:
Sıralama işlemi gerekmiyorsa veya sıralama, belleğe yapılabilir, SORT_IN_TEMPDB göz ardı edilir.
|
Hayır |
|
IGNORE_DUP_KEY |
Yinelenen anahtar değerleri benzersiz dizin eklemek bir ekleme işlemi çalıştığında hata yanıtını belirtir.IGNORE_DUP_KEY seçeneği, yalnızca dizin oluşturulan veya yeniden operasyonunu eklemek için geçerlidir.Varsayılan değer kapalı'dır. |
Evet |
|
STATISTICS_NORECOMPUTE |
Güncel olmayan dizin İstatistikleri otomatik olarak recomputed olup olmadığını belirtir. |
Evet |
|
DROP_EXISTING |
Varolan dizin bırakılan yeniden ve gösterir. |
Hayır |
|
Çevrimiçi |
Dizin işlemleri sırasında temel tabloda veya kümelenmiş dizin verilerini ve ilişkili tüm kümelenmemiş dizinler eşzamanlı kullanıcı erişimine izin verilip verilmediğini belirler.
Note:
Çevrimiçi dizin işlemleri, yalnızca kullanılabilirSQL ServerEnterprise ve Developer, deneme sürümleri.
|
Hayır |
|
ALLOW_ROW_LOCKS |
Satır kilitleri dizin verilere de kullanılıp kullanılmayacağını belirler. |
Evet |
|
ALLOW_PAGE_LOCKS |
Dizin verilerine erişme sayfa kilitleri kullanılıp kullanılmayacağını belirler. |
Evet |
|
MAXDOP |
En fazla işlemci query processor, tek bir dizin çalıştırmak için kullanabileceğiniz ayarlar deyim.Geçerli sistem iş yüküne bağlı olarak daha az işlemci kullanılıyor olabilir.
Note:
Paralel dizin işlemleri, yalnızca kullanılabilirSQL ServerEnterprise ve Developer, deneme sürümleri.
|
Hayır |
|
DATA_COMPRESSION |
Veri sıkıştırma seçeneği belirtilen tablo, bölüm numarası veya bölüm aralık belirtir.YOK, satır ve sayfa seçeneklerdir. |
Evet |
Dizin seçeneklerini ayarlamak için
Yeniden oluşturma olmadan seçeneklerini ayarlama
ALTER INDEX deyiminde küme yan tümce kullanarak, aşağıdaki dizin seçeneklerini dizini yeniden olmadan ayarlayabilirsiniz:
ALLOW_PAGE_LOCKS
ALLOW_ROW_LOCKS
IGNORE_DUP_KEY
STATISTICS_NORECOMPUTE
Bu seçenekler, dizine hemen uygulanır.Yalnızca bir dizin oluşturulduğunda yeniden veya FILLFACTOR ve çevrimiçi, gibi diğer dizin seçeneklerini belirtilebilir.
Dizin seçenek ayarları görüntüleme
Tüm dizin seçeneklerini değerlerini meta veriler depolanır.Meta veriler depolanmış değerleri uygun kataloğun görünümlerinde görüntülenebilir.Varolan dizinleri geçerli seçenek ayarlarını incelemek içinsys.indexes Katalog görünümü. STATISTICS_NORECOMPUTE için geçerli değerini incelemek içinsys.stats Katalog görünümü.Daha fazla bilgi için bkz:Dizin bilgileri görüntüleme.
Örnekler
Aşağıdaki örnekte kümeleriniALLOW_ROW_LOCKSveIGNORE_DUP_KEYseçenekleri içinAK_Product_ProductNumberüzerinde dizinProduction.ProductTablo.
USE AdventureWorks;
GO
--Verify the current values for these options.
SELECT allow_row_locks, ignore_dup_key
FROM sys.indexes
WHERE name = N'AK_Product_ProductNumber';
GO
--Set the ALLOW_ROW_LOCKS option OFF and the IGNORE_DUP_KEY option ON.
ALTER INDEX AK_Product_ProductNumber
ON Production.Product
SET (ALLOW_ROW_LOCKS = OFF, IGNORE_DUP_KEY = ON);
GO
--Verify the new values for these options.
SELECT allow_row_locks, ignore_dup_key
FROM sys.indexes
WHERE name = N'AK_Product_ProductNumber';
GO
See Also