index_option (Transact-SQL)
Belirtir bir küme kullanılarak oluşturulan bir kısıtlama tanımının bir parçası olan bir dizin için uygulanabilen seçeneklerinALTER tablo.
{
PAD_INDEX = { ON | OFF }
| FILLFACTOR = fillfactor
| IGNORE_DUP_KEY = { ON | OFF }
| STATISTICS_NORECOMPUTE = { ON | OFF }
| ALLOW_ROW_LOCKS = { ON | OFF }
| ALLOW_PAGE_LOCKS = { ON | OFF }
| SORT_IN_TEMPDB = { ON | OFF }
| ONLINE = { ON | OFF }
| MAXDOP = max_degree_of_parallelism
| DATA_COMPRESSION = { NONE |ROW | PAGE}
[ ON PARTITIONS ( { <partition_number_expression> | <range> }
[ , ...n ] ) ]
}
<range> ::=
<partition_number_expression> TO <partition_number_expression>
<single_partition_rebuild__option> ::=
{
SORT_IN_TEMPDB = { ON | OFF }
| MAXDOP = max_degree_of_parallelism
| DATA_COMPRESSION = {NONE | ROW | PAGE } }
}
Bağımsız değişkenler
PAD_INDEX**=** { ON | Kapalı }
Dizin doldurma belirtir.Varsayılan değer KAPALı'dır.AÇIK
FILLFACTOR tarafından belirtilen boş alanın yüzdesi dizin ara düzey sayfalara uygulanır.KAPALı veya fillfactor belirtilmemiş
Ara düzey sayfalar, kapasite, anahtar kümesi ara sayfalarında verilen dizine sahip olabilir, en büyük boyutu en az bir satır için yeterli alan bırakarak yakınında için doldurulur.
FILLFACTOR **=**fillfactor
Belirtir, ne tam olarak gösteren bir yüzdeDatabase EngineYaprak düzey, her dizin sayfasının dizin oluşturma veya değişiklik yapmakBelirtilen değer bir tamsayı değeri 1 ile 100 olmalıdır.Varsayılan değer 0'dir.Not
doldurma faktörü değerleri 0 ile 100'de tüm bakımdan aynıdır.
IGNORE_DUP_KEY**=** { ON | OFF}
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 sonra operasyonunu eklemek için geçerlidir.Seçeneği çalıştırırken hiçbir etkisi olmaz. DİZİN OLUŞTURMA, DİZİN DEĞİŞTİR, or Güncelleştirme.Varsayılan değer KAPALı'dır.AÇIK
Bir uyarı iletisi, yinelenen anahtar değerleri benzersiz dizin eklendiğinde gerçekleşir.Yalnızca benzersiz kısıtlamayı ihlal satır başarısız olacaktır.Kapalı
Bir hata iletisi, yinelenen anahtar değerleri benzersiz dizin eklendiğinde gerçekleşir.Tüm EKLEME işlemini geri alınır.
IGNORE_DUP_KEY olamaz küme görünümü üzerinde oluşturulan dizinler benzersiz olmayan dizinler, XML dizinler, kayma dizinleri ve süzülmüş dizinler için açık.
IGNORE_DUP_KEY görüntülemek için kullanın. sys.Indexes.
WITH IGNORE_DUP_KEY WITH IGNORE_DUP_KEY için geriye dönük uyumlu sözdiziminde eşdeğerdir ON =.
STATISTICS_NORECOMPUTE**=** { ON | Kapalı }
İstatistik recomputed olup olmadığını belirtir.Varsayılan değer KAPALı'dır.AÇIK
Güncel olmayan istatistikleri otomatik olarak recomputed.Kapalı
Otomatik istatistik güncelleştirme etkinleştirilir.
ALLOW_ROW_LOCKS**=** { AÇIK | OFF }
Satır kilitlerin izin verilip verilmeyeceğini belirtir.Varsayılan AÇıK'tır.AÇIK
Dizine erişirken, satır kilidi izin verilir.The Database Engine determines when row locks are used.Kapalı
Satır kilitlerin kullanılır.
ALLOW_PAGE_LOCKS**=** { AÇIK | OFF }
Sayfa kilitlerin izin verilip verilmeyeceğini belirtir.Varsayılan AÇıK'tır.AÇIK
Dizine erişirken, sayfa kilidi izin verilir.The Database Engine determines when sayfa locks are used.Kapalı
Sayfa kilitlerin kullanılır.
SORT_IN_TEMPDB**=** { ON | Kapalı }
Sıralama sonuçlar saklamak verip belirtirtempdb.Varsayılan değer KAPALı'dır.AÇIK
Dizin oluşturmak için kullanılan ara sıralama sonuçlar saklanır tempdb.Bu, dizin oluşturmak için gereken süreyi azaltabilirsiniz. tempdb üzerinde farklı olan küme kullanıcı veritabanı disklerden biri.Ancak, dizin oluşturma sırasında kullanılan disk alanı miktarını artırır.Kapalı
sonuçlar ara sıralama aynı dizin veritabanında depolanır.
ONLINE = { ON | Kapalı }
Temel tabloları ve ilişkili dizinler için dizini işlemi sırasında sorguları ve veri değişikliği kullanılabilir olup olmadığını belirtir.Varsayılan değer KAPALı'dır.Not
Çevrimiçi benzersiz kümelenmemiş dizin oluşturulamıyor.Bu, bir benzersiz veya birincil anahtar kısıtlaması nedeniyle oluşturulan dizinler içerir.
AÇIK
Uzun süreli tablo kilitlerin dizin işlemi süresince tutulur.Ana dizin işlem aşamasında, kaynağı üzerinde yalnızca bir hedefi Paylaştır'ı (IS) kilit tutulduğu tablo.Bu, sorgu veya temel alınan tablo ve devam etmek için dizin güncelleştirmeleri sağlar.Operasyonun başlangıcında, paylaşılan (S) kilit, kaynak nesne üzerinde çok kısa bir saat için tutulur.Bir kısa saat, operasyonun sonunda kümelenmemiş bir dizin oluşturulursa; bir S (paylaşılan) kilit kaynağını temel alınan veya bir SCH-M (şema değişikliği) kilit, kümelenmiş dizin oluşturulduğunda veya çevrimiçi bıraktı ve bir kümelenmiş veya kümelenmemiş dizin yeniden alındı.ÇEVRIMIÇI olamaz küme dizin yerel geçici tablo oluşturulduğunda) açık.Kapalı
Tablo kilidi dizin işlemi süresince geçerli olur.Üzerinde bir Şema değiştirme (Sch-M) kilit oluşturur, yeniden oluşturur, kümelenmiş dizin düşünceye veya yeniden oluşturur veya kümelenmemiş bir dizin düşünceye çevrimdışı dizin işlem edinme tablo.Bu, tüm kullanıcı erişimini engeller temel alınan tablo işlemi süresince.Bir çevrimdışı dizin işlem kümelenmemiş bir dizin oluşturur, paylaşılan (S) kilit üzerinde edinme tablo.Bu güncelleştirmelerin temel tablonun engeller, ancak okuma işlemleri için SELECT deyimlerinin gibi sağlar.
Daha fazla bilgi için bkz: Çevrimiçi'ne dizin işlem çalışma. Kilitlerin hakkında daha fazla bilgi için bkz: Kilit modu.
Not
Çevrimiçi bir dizin işlemleri yalnızca kullanılabilir SQL Server Enterprise Developer ve değerlendirme sürümleri.
MAXDOP **=**max_degree_of_parallelism
Geçersiz kılar parallelism en büyük ölçüde yapılandırma seçeneği Dizin operasyonun süresi.Daha fazla bilgi için bkz: parallelism seçeneği en büyük ölçüde. Bir paralel planı yürütme kullanılan işlemci sayısını sınırlamak için MAXDOP kullanın.En fazla 64 işlemci ' dir.max_degree_of_parallelism aşağıdaki gibi olabilir:
1
Paralel planı oluşturma bastırır.>1
Işlemci için belirtilen bir paralel dizin işleminde kullanılan en fazla sayısını sınırlar.0 (varsayılan)
Işlemci veya daha az geçerli sistem iş yükünün alarak fiili numarasını kullanır.
Daha fazla bilgi için bkz: Parallel ındex işlemi yapılandırma.
Not
Paralel dizin işlemleri yalnızca kullanılabilir SQL Server Enterprise Developer ve değerlendirme sürümleri.
data_compression
Belirtilen tablo, bölüm numarası veya aralık bölümleri için veri sıkıştırma seçeneği belirtir.Seçenekler aşağıdaki gibidir:Yok
Tablo ya da belirli bölümlerini sıkıştırılır değil.SATIR
Tablo ya da belirtilen bölümleri satır sıkıştırması kullanılarak sıkıştırılır.SAYFA
Tablo ya da belirtilen bölümleri sayfa sıkıştırması kullanılarak sıkıştırılır.
Sıkıştırma hakkında daha fazla bilgi için bkz: Sıkıştırılmış tablolar ve dizinler oluşturma.
ON PARTITIONS ( { <partition_number_expression> | <range> } [ ,...n ] )
DATA_COMPRESSION ayarı uygulandığı bölümler belirtir.tablo İse bölümlenmiş değil, ON bölüm bağımsız bir hata oluşturur.ON bölüm yan sağlanmazsa, DATA_COMPRESSION seçeneği bölümlenmiş bir tablonun tüm bölümleri için geçerli olacaktır.<partition_number_expression> aşağıdaki şekillerde belirtilebilir:
Sayısı bir bölümü, örneğin sağlar: BÖLÜMLERİNDE (2).
Bölüm numaralarını aralarına virgül koyarak, örneğin belirli bölümlerini için sağlanmıştır: DİSK (1, 5).
Örnek aralıkları hem de tek tek bölümleri sağlar: DİSK (2, 4, 6-8).
<Aralık> Bölüm numaralarını sözcüğü YAPıLıR, örneğin ayrılmış belirtilebilir: BÖLÜMLERİNDE (6-8).
Veri sıkıştırma farklı bölümleri için farklı türde ayarlamak için , DATA_COMPRESSION seçeneği birden fazla kez örneğin belirtin:
REBUILD WITH ( DATA_COMPRESSION = NONE ON PARTITIONS (1), DATA_COMPRESSION = ROW ON PARTITIONS (2, 4, 6 TO 8), DATA_COMPRESSION = PAGE ON PARTITIONS (3, 5) )
<single_partition_rebuild__option>
Çoğu durumda, dizin yeniden bölümlenmiş bir dizinin tüm bölümlerini yeniden oluşturur.Aşağıdaki seçenekleri tek bir birime uyguladığınızda, tüm bölümleri yeniden.sort_in_tempdb
maxdop
data_compression