sp_fulltext_keymappings (Transact-SQL)
Belge tanımlayıcılar eşlemeleri döndürür (DocIds) ve tam metin anahtar değerleri.DocIdsütun değerlerini içeren bir bigint tam metin belli tam metin anahtar değeri eşleştirir tamsayı dizini tablo.DocIdarama koşulu karşılayan değerleri sorgulanan temel tablo için tam metin anahtar değerleri burada eşleştirildikleri veritabanı motoru tam metin Engine iletilir.Tam metin anahtarsütun bir sütun tabloüzerinde gerekli bir benzersiz dizin numarasıdır.
Sözdizimi
sp_fulltext_keymappings { table_id | table_id, docid | table_id, NULL, key }
Parametreler
table_id
tablonesne kimliği tam metin dizini olur.Geçersiz bir belirtirseniz, table_id, bir hata döndürdü.Bir tablonesne kimliği alma hakkında daha fazla bilgi için bkz: OBJECT_ID (Transact-SQL).docid
Bir iç belge tanımlayıcısı (DocId), karşılık gelen anahtar değer.Geçersiz bir docid değerini döndürür sonuçlar.Belge tanımlayıcılar hakkında daha fazla bilgi için bkz: Tam metin dizin yapısı.key
Belirtilen tablotam metin anahtar değerdir.Geçersiz bir key değerini döndürür sonuçlar.Tam metin anahtar değerleri hakkında daha fazla bilgi için bkz: Nasıl yapılır: Tam metin anahtar sütunu (Transact-sql) hakkında sorgulama.
Önemli |
---|
Kullanma hakkında daha fazla bilgi için "Uyarılar" iki ya da üç parametre bakın Bu konuda daha sonra. |
Dönüş Kodu Değerleri
Yok.
Sonuç Kümeleri
Sütun adı |
Veri türü |
Açıklama |
---|---|---|
DocId |
bigint |
Bir iç belge tanımlayıcısı (DocId) anahtar değeri. için karşılık gelen sütun |
Key |
* |
Belirtilen tablotam metin anahtar değerdir. Tam metin anahtar eşleştirme tabloyoksa, boş bir satır kümesi döndürülür. |
* Veri türü için Key veri türü olarak aynı tam metin anahtar sütun temel tablo.
İzinler
Bu işlev , genel olarak ve herhangi bir özel izin gerekmez.
Açıklamalar
Aşağıdaki tablo , bir, iki veya üç parametrelerini kullanarak etkisini açıklar.
Bu parametre list… |
Bu result… sahiptir |
---|---|
table_id |
İle yalnızca çağrıldığında table_id parametresi sp_fulltext_keymappings tüm tam metin anahtar döndürür (Key) değerleri belirtilen temel tablo, her anahtarkarşılık gelen DocId birlikte.Bu, silme anahtarları içerir. Bu işlev , sorunları çeşitli sorun giderme için yararlıdır.Seçili tam metin anahtar bir tamsayı veri türünde değilse, tam metin dizini içeriği görmek için özellikle kullanışlıdır.Bu sonuçlar katılma içerir sp_fulltext_keymappings sonuçlar ile sys.dm_fts_index_keywords_by_document.Daha fazla bilgi için, bkz. sys.dm_fts_index_keywords_by_document (Transact-SQL). Genel olarak, ancak, mümkünse, yürütmeköneririzsp_fulltext_keymappings parametrelerle belirli bir tam metin anahtar veya belirtinDocId. Bu tüm anahtar eşleme döndüren performans maliyetini önemli ölçüde olabilir özellikle çok büyük bir tablo için bir anahtar tüm harita dönme'den çok daha verimli olur. |
table_id, docid |
Yalnızca table_id ve docid belirtilmiş, docid geçirecektir ve geçerli DocId belirtilen tablobelirtmek gerekir.Bu işlev , belirli bir tam metin dizini DocId için karşılık gelen temel tablo özel tam metin anahtar yalıtmak yararlıdır. |
table_id, NULL, key |
Üç parametre varsa, ikinci parametre null, olmalı ve key geçirecektir ve belirtilen tablogeçerli tam metin anahtar belirtmeniz gerekir.temel tabloiçin belli bir tam metin anahtar karşılık gelen DocId yalıtma bu işlev yararlıdır. |
Aşağıdaki koşullardan herhangi biri altında bir hata döndürülür:
Geçersiz bir belirleme table_id.
tablo tam metin dizini değil.
null olmayan bir parametre için karşılaşılan-null.
Örnekler
Not
Bu örnekler bölümünde kullanım Production.ProductReview tablo AdventureWorks2008R2 örnek veritabanı.Bu dizin için sağlanan örnek yürüterek oluşturmak ProductReview tablo Full-Text Index (Transact-SQL) oluştur.
A.Tüm anahtar ve DocId değerleri edinme
Aşağıdaki örnek bir declare yerel bir değişken oluşturmak içindeyim @table_id ve kimliği atamak için ProductReviewtablo olarak kendi değer. Örnek yürütür sp_fulltext_keymappings belirterek @table_id için table_id parametresi.
Not
Kullanarak sp_fulltext_keymappings ile tek table_id parametresi uygun küçük tablolar.
USE AdventureWorks2008R2;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id;
GO
Bu örnek tüm DocIds ve tam metin anahtarları tablo, aşağıdaki gibi döndürür:
docid |
key |
|
1 |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
3 |
4 |
4 |
4 |
B.Belirli bir anahtar değeri DocId değerini elde etme
Aşağıdaki örnek, yerel bir değişken oluşturmak için declare deyim kullanır @table_idve kimliği atamak için ProductReview tablo olarak kendi değer.Örnek yürütür sp_fulltext_keymappings belirterek @table_id için table_id parametresi için null docid parametre ve 4 key parametresi.
Not
Kullanarak sp_fulltext_keymappings ile tek table_id parametresiuygun küçük tablolar.
USE AdventureWorks2008R2;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id, NULL, 4;
GO
Bu örnek, aşağıdaki sonuçlarverir.
docid |
key |
|
4 |
4 |
4 |
Ayrıca bkz.