Full-Text Index (Transact-SQL) Değiştir
Tam metin dizini özelliklerini değiştirir.
Sözdizimi
ALTER FULLTEXT INDEX ON table_name
{ ENABLE
| DISABLE
| SET CHANGE_TRACKING { MANUAL | AUTO | OFF }
| ADD ( column_name
[ TYPE COLUMN type_column_name ]
[ LANGUAGE language_term ] [,...n] )
[ WITH NO POPULATION ]
| DROP ( column_name [,...n] )
[ WITH NO POPULATION ]
| START { FULL | INCREMENTAL | UPDATE } POPULATION
| {STOP | PAUSE | RESUME } POPULATION
| SET STOPLIST { OFF| SYSTEM | stoplist_name }
[ WITH NO POPULATION ]
}
[;]
Bağımsız değişkenler
table_name
tablo veya sütun veya sütunları tam metin dizininde yer içeren dizinli görünüm adıdır.Veritabanı ve tablo sahibi adlarını belirtmek isteğe bağlıdır.ENABLE | DEVRE DIŞI BIRAKMA
Söyler SQL Server toplamak için tam metin dizin verileri verip table_name.Tam metin dizinini ETKİNLEŞTİR etkinleştirir; Tam metin dizini devre dışı bırakır devre dışı bırakın. Dizin devre dışı durumdayken tablo tam metin sorguları destekler.Tam metin dizini devre dışı bırakılması, değişiklik izlemeyi devre dışı ancak etkin kullanarak istediğiniz saat yeniden etkinleştirebilirsiniz tam metin dizini korumak sağlar.Tam metin dizini devre dışı bırakıldığında, tam metin dizini meta veriler sistem tablolarıkalır.CHANGE_TRACKING (otomatik veya el ile güncelleştirme) etkin durumda ise, tam metin dizini devre dışı, devam eden gezinme duruyor, dizin durumunu, donar ve tablo verileri yeni değişiklikler değil izlenen veya dizinine yayılır.
SET CHANGE_TRACKING {MANUAL | OTOMATİK | OFF}
Tam metin dizin tarafından kapsanan tablo sütunları yapılan değişiklikleri (güncelleştirmeler, siler veya ekler) tarafından yayılan olup olmadığını belirtir SQL Server için tam metin dizini.Veri değişiklikleri WRITETEXT ve updatetext tam metin dizin içinde yansıtılmaz ve değişiklik izleme toplanmaz.Not
Değişiklik izleme ve Hayır NÜFUS ile etkileşimi hakkında bilgi için "Uyarılar" konusuna bakın. Bu konuda daha sonra.
EL İLE
İzlenen değişiklikleri el ile … çağırarak alter Full-Text Index aktarılacaktır olduğunu belirtir Güncelleştirme POPÜLASYON başlatmak Transact-SQL deyim (el ile popülasyon).Kullanabileceğiniz SQL Server öğesine çağrı bu Transact-SQLdüzenlideyim .OTOMATİK
Verileri temel tablo değiştirilmiş olarak izlenen değişiklikleri otomatik olarak aktarılacaktır olduğunu belirtir (Otomatik popülasyon).Değişiklikler otomatik olarak yayılır karşın, bu değişiklikler hemen tam metin dizini yansıtılması değil.Otomatik varsayılandır.KAPALI
Belirleyen SQL Server değil tutmak için değişikliklerin listesinidizinlenmiş bir veri.ADD | BIRAKcolumn_name
Eklenen veya silinen bir tam metin dizini sütun belirtir.The sütun or columns must be of type char, varchar, nchar, nvarchar, text, ntext, image, xml, varbinary, or varbinary(max).Tam metin dizinlemesi için açılan yan tümce yalnızca etkinleştirilmiş olduğu sütunlar önceden kullanın.
Tür sütunu ve dili küme için Ekle yan tümce ile bu özellikleri kullanın column_name.Bir sütun eklendiğinde, çalışmak için sırayla bu sütun tam metin sorguları için tablo tam metin dizin oluşturulmalıdır.
Not
Bir sütun eklendiğinde veya tam metin dizinden bırakılan sonra tam metin dizini olup doldurulur, değişiklik izleme etkinleştirilmiş olup olmadığı ve ile Hayır POPÜLASYON belirtmiş olmasına bağlıdır.Daha fazla bilgi için "Uyarılar" konusuna bakın. Bu konuda daha sonra.
TÜR SÜTUNUtype_column_name
tablosütunadını belirtir type_column_name, diğer bir deyişle belge türü için kullanılan bir varbinary, varbinary(max), veya image belge. Türü sütunolarak bilinen bu sütun, kullanıcı tarafından sağlanan dosya uzantısı (.doc, .pdf, .xls vb.) içerir.Tür sütun olmalıdır char, nchar, varchar, veya nvarchar.Tür sütunu belirtin type_column_name yalnızca yoksa column_name belirtir bir varbinary, varbinary(max) veya image sütun, veri depolanan ikili veri; Aksi takdirde, SQL Server işlevi bir hata.
Not
saatdizin oluşturma sırasında tam-metin arama motoru kısaltmayı türü sütun , her tablo satırı belgede kullanmak için hangi tam metin araması filtresini tanımlamak için kullandığı column_name.Filtre belgeyi ikili akış olarak yükler, biçimlendirme bilgilerini kaldırır ve metin belgeden sözcük ayırıcı bileşene gönderir.Daha fazla bilgi için, bkz. Tam metin arama filtreleri.
DİLlanguage_term
Depolanan verileri dildir column_name.language_termisteğe bağlıdır ve bir dize, tamsayı veya yerel ayar tanıtıcısı bir dil için (LCID) karşılık gelen onaltılık değeri olarak belirtilebilir.language_term Belirtilmişse, temsil ettiği dil arama koşulutüm öğeler için uygulanır.Herhangi bir değer belirtilmemişse, varsayılan tam metin dilini SQL Server örnek kullanılır.
Use sp_configure saklı yordam için varsayılan tam metin dili hakkında bilgilere erişmek için SQL Server örnek.Daha fazla bilgi için, bkz. Varsayılan seçenek tam metin dili.
Bir dizebelirtildiğinde language_term karşılık gelen diğer ad sütun değeri syslanguages sistem tablosu.dize gibi tek tırnak işareti içine alınmalıdır 'language_term'.Tamsayı belirtildiğinde language_term gerçek LCID tanıtan dili.Onaltılı değer olarak belirtildiğinde language_term 0 x onaltılık değerini ardında iseLCID.Onaltılı değeri, sekiz basamak, öndeki sıfırı dahil aşmamalıdır.
Değer (DBCS) çift baytlık karakter kümesi biçiminde ise SQL Server tarafından kendisine dönüştürülürUnicode.
Sözcük ayırıcılarını ve sözcük köklerini, gibi kaynaklar için etkin olarak belirtilen dil language_term.Bu tür kaynaklar belirtilen dil desteği yoksa SQL Server işlevi bir hata.
Birden çok dilde metin verilerini içeren DAMLA ve -xml sütun veya sütun depolanan metnin dilini belirsiz olduğunda durumlarda nötr (0x0) dil kaynakkullanın.xml veya blob türü sütunlarda depolanan belgeler, belge içinde kodlama dili saatdizin oluşturma sırasında kullanılır.xml sütunlar, örneğin, dil xml belgeleri, XML: lang öznitelik tanımlar.Sorgu saatdeğer önceden belirtilen language_term varsayılan dil kullanılan tam metin sorguları için sürece olur language_term tam metin sorgusubir parçası belirtilir.
[ ,...n]
Birden çok sütun Ekle veya açılan yan tümceleri için belirtilebilir gösterir.Birden çok sütun belirtildiğinde, bu sütunları virgülle ayırın.HİÇBİR POPÜLASYON İLE
Tam metin dizini bir Ekle veya drop sütun veya STOPLIST ayarlama işlemi sonra doldurulmaz olduğunu belirtir.Dizin, yalnızca kullanıcı bir başlangıç çalıştırırsa doldurulur...NÜFUS komutu.Hayır POPÜLASYON belirtildiğinde, SQL Server doldurmuyor bir dizin.Yalnızca bir alter Full-Text Index verir sonra dizini doldurulur...POPÜLASYON start komutu.Hayır POPÜLASYON belirtilmediği durumlarda SQL Server dolduran dizini.
CHANGE_TRACKING etkin ve ile Hayır POPÜLASYON belirtilmişse, SQL Server işlevi bir hata.CHANGE_TRACKING etkin ve ile Hayır POPÜLASYON belirtilmezse, SQL Server gerçekleştirdiği tam popülasyon dizin.
Not
Değişiklik izleme ve Hayır NÜFUS ile etkileşim hakkında daha fazla bilgi için "Uyarılar" konusuna bakın. Bu konuda daha sonra.
{FULL| BAŞLATINCREMENTAL|GÜNCELLEŞTİRME} NÜFUS
Söyler SQL Server , tam metin dizini popülasyon başlatmak için table_name.Tam metin dizini popülasyon , Sürüyor, SQL Server bir uyarı verir ve yeni popülasyonbaşlatılmaz.-
TAM
tablo her satır satır zaten dizine alınmış olsa bile, tam metin dizinlemesi için alınması belirtir.ARTIMLI
Tam metin dizinlemesi için son popülasyon alınması bu yana, yalnızca değiştirilen satırları belirtir.ARTIMLI uygulanabilir, yalnızca tablo türünde bir sütun varsa timestamp.tam metin kataloğu tablo türünde bir sütun içermiyor, timestamp, tam bir popülasyon tablo geçer.GÜNCELLEŞTİRME
Son saat değişiklik izleme dizin güncelleştirmesinden tüm eklemeler, güncelleştirme veya silme işlemi belirtir.Değişiklik izleme popülasyon tabloüzerinde etkinleştirilmiş olması gerekir, ancak arka plan güncelleştirme dizin veya otomatik değişiklik izleme açık olmalı değil.
{DUR | PAUSE | RESUME} NÜFUS
Durdurur veya devam eden tüm popülasyon duraklar; durdurur veya duraklatılmış tüm popülasyonsürdürür.Otomatik değişiklik izleme veya arka plan güncelleştirme dizini POPÜLASYON DURDURUR durdurmaz.Değişiklik izlemeyi durdurmak için set CHANGE_TRACKING off kullanın.
NÜFUS Duraklat ve SÜRDÜR NÜFUS yalnızca tam yerleştirme için kullanılır.Burada gezinme durduruldu arasında gezinmeyi diğer ortalamaya sürdürmek için diğer popülasyon türleri için uygun değillerdir.
SET {OFF| STOPLIST SİSTEM | stoplist_name }
Varsa, dizin ile ilişkili tam metin stoplist değiştirir.KAPALI
Hiçbir stoplist tam metin dizini ile ilişkili olduğunu belirtir.SİSTEM
Varsayılan tam metin sistem STOPLIST bu tam metin dizini için kullanılması gerektiğini belirtir.stoplist_name
Tam metin dizini ile ilişkilendirilecek stoplist adını belirtir.
Daha fazla bilgi için, bkz. Stopwords ve Stoplists.
Açıklamalar
Üzerinde xml Sütunlar oluşturabileceğiniz bir tam metin dizini xml öğelerinin içeriğinin dizinini oluşturur ancak yoksayar xml biçimlendirme.Öznitelik değerleri sayısal değerler olmadıkça dizin, tam metin.Öğe etiketleri olarak token sınırları kullanılır.İyi biçimlendirilmiş xml veya HTML belgelerini ve parçalarını birden çok dil içeren desteklenir.Daha fazla bilgi için, bkz. Bir xml sütun üzerinde tam metin dizini.
Değişiklik izleme ve hiçbir NÜFUS parametresi etkileşimler
Tam metin dizini doldurulur olup değişiklik izleme etkinleştirilmiş olup olmadığı ve ile Hayır POPÜLASYON alter Full-Text Index deyimbelirtmiş olmasına bağlıdır.Aşağıdaki tablo , kendi etkileşim sonucu özetler.
Değişiklik izleme |
HİÇBİR POPÜLASYON İLE |
Sonuç |
---|---|---|
Etkin değil |
Belirtilmemiş |
Tam bir popülasyon dizin üzerinde gerçekleştirilir. |
Etkin değil |
Belirtilen |
Dizinin hiçbir popülasyon alter Full-Text Index kadar oluşur...POPÜLASYON başlatın deyim verilir. |
Etkin |
Belirtilen |
Bir hata oluşturulur ve dizinin değişmeyen. |
Etkin |
Belirtilmemiş |
Tam bir popülasyon dizin üzerinde gerçekleştirilir. |
Tam metin dizinlerini doldurma hakkında daha fazla bilgi için bkz: Tam metin dizini popülasyon.
İzinler
Kullanıcı gerekir alter izniniz tablo veya dizinli görünümveya üye olmanız sysadmin sabit sunucu rolü, ya da db_ddladmin veya db_owner veritabanı rolleri sabit.
STOPLIST set belirtilmişse, kullanıcı stoplist üzerinde başvurular izninizin olması gerekir.STOPLIST sahibi bu izni verebilirsiniz.Buna ek olarak, başvurular izni verme, Full-Text catalog alter izni gerektirir.
Not
Genel başvuru ile birlikte gelen varsayılan stoplist izni SQL Server.
Örnekler
A.El ile değişiklik izlemeyi ayarlama
Aşağıdaki örnek ayarlar el ile değişiklik izleme üzerinde tam metin dizini JobCandidate tablo AdventureWorks2008R2 veritabanı.
USE AdventureWorks2008R2;
GO
ALTER FULLTEXT INDEX ON HumanResources.JobCandidate
SET CHANGE_TRACKING MANUAL;
GO
B.Tam bir popülasyonbaşlangıç
Aşağıdaki örnek üzerinde tam metin dizini popülasyon tam başlangıç JobCandidate tablo AdventureWorks2008R2 veritabanı.
USE AdventureWorks2008R2;
GO
ALTER FULLTEXT INDEX ON HumanResources.JobCandidate
START FULL POPULATION;
GO