sp_fulltext_keymappings (języka Transact-SQL)
Zwraca mapowania identyfikatorów dokumentu (DocIds) i wartości klucz pełnotekstowego opartego.DocIdkolumna zawiera wartości dla bigint Liczba całkowita, która mapuje wartości pełnego tekstu określonego klucz w całym tekście indeksowania tabela.DocIdwartości, które spełniają warunek wyszukiwania są przekazywane z silnika pełnego tekstu do aparatu bazy danych, w którym są mapowane do wartości klucz pełnotekstowego opartego z tabela bazowa poszukiwanych.Pełnego tekstu kluczkolumna jest wymagana jest jedna kolumna w tabela indeks unikatowy .
Składnia
sp_fulltext_keymappings { table_id | table_id, docid | table_id, NULL, key }
Parametry
table_id
To identyfikator obiektu pełnego tekstu indeksowania tabela.Jeżeli określono nieprawidłową table_id, zwracany jest błąd.Aby uzyskać informacje o uzyskiwaniu Identyfikatora obiektu tabela, zobacz OBJECT_ID (Transact-SQL).docid
Jest to identyfikator wewnętrzny dokument (DocId), który odpowiada wartości klucz .Nieprawidłowy docid wartość nie wygeneruje żadnych wyniki.Aby uzyskać informacje dotyczące identyfikatorów dokumentu, zobacz Struktury indeksu pełnotekstowego.key
Wartość klucz pełnotekstowego opartego z określonej tabela.Nieprawidłowy key wartość nie wygeneruje żadnych wyniki.Aby uzyskać informacje dotyczące wartości klucz pełnotekstowego opartego, zobacz Jak Uzyskiwanie informacji o kolumnie klucza pełnotekstowego (Transact-SQL).
Ważne: |
---|
Informacje przy użyciu jednego dwóch lub trzech parametrów, zobacz "Uwagi" w dalszej części tego tematu. |
Wartości kodów powrotnych
Brak.
Zestawy wyników
Nazwa kolumny |
Typ danych |
Opis |
---|---|---|
DocId |
bigint |
Jest to identyfikator wewnętrzny dokument (DocId) kolumna odpowiadającej wartości klucz . |
Key |
* |
Wartość klucz pełnotekstowego opartego z określonej tabela. Żadne klucze pełnego tekstu istnieje mapowanie tabela, zwracany jest pusty zestaw wierszy . |
* Typ danych dla Key jest identyczny z typem danych z pełnotekstowe klucz kolumna w tabela bazowa.
Uprawnienia
Ta funkcja jest publiczna i nie wymaga żadnych specjalnych uprawnień.
Uwagi
W poniższej tabela opisano efekt przy użyciu jednego, dwóch lub trzech parametrów.
Ten parametr list… |
Ma to result… |
---|---|
table_id |
Po wywołaniu tylko z table_id parametr, sp_fulltext_keymappings zwraca wszystkie pełnotekstowego klucz (Key) wartości z określonego tabela bazowa, wraz z DocId, odpowiadający każdego klucz.Zawiera klucze, które oczekują na usuwanie. Ta funkcja jest przydatna do rozwiązywania problemów z różnych problemów.Jest szczególnie przydatne przy przeglądaniu podczas pełnego tekstu wybranego klucz nie jest typu danych Liczba całkowita zawartość indeksu pełnotekstowego.Obejmuje to łączącą wyniki sp_fulltext_keymappings z wyniki sys.dm_fts_index_keywords_by_document.Aby uzyskać więcej informacji, zobacz sys.dm_fts_index_keywords_by_document (języka Transact-SQL). Na ogół jednak zalecane, jeśli to możliwe, wykonać sp_fulltext_keymappings z parametrami, które określić szczególne pełnotekstowe klucz lub DocId.To jest znacznie bardziej efektywne niż powrót z mapy całego klucz , zwłaszcza w przypadku bardzo dużych tabela , dla których mogą być znacznych kosztów wydajności przekazujących dane mapy cały klucz . |
table_id, docid |
Jeśli tylko table_id i docid są określone, docid musi być niepustych i określić prawidłową DocId w określonej tabela.Ta funkcja jest przydatna do izolowania niestandardowe pełnotekstowe klucz z tabela bazowa , która odpowiada DocId określonego indeksu pełnotekstowego. |
table_id, NULL, key |
Jeśli istnieją trzy parametry, drugi parametr musi mieć wartość NULL, i key musi być niepustych i określ wartość pełnotekstowe prawidłowy klucz z określonej tabela.Ta funkcja jest przydatna w izolowaniu DocId, odpowiadający określonego klucz pełnotekstowego z tabela bazowa. |
Zwracany jest błąd w jeden z następujących warunków:
Określono nieprawidłową table_id.
tabela nie jest indeksowana pełnego tekstu.
Wystąpi dla parametrów, które mogą być inne niż NULL-null.
Przykłady
Ostrzeżenie
Przykłady w tej sekcji Użyj Production.ProductReview tabela AdventureWorks2008R2 przykładowej bazy danych.Indeks można utworzyć przez wykonywanie przykład przewidziane ProductReview tabela w Utwórz indeks PEŁNOTEKSTOWY (Transact-SQL).
A.Uzyskiwanie wszystkich wartości klucza i DocId
W poniższym przykładzie użyto DECLARE instrukcja do utworzenia zmiennej lokalnej, @table_id i przypisać identyfikator ProductReview tabela jako jego wartość.Przykład wykonuje sp_fulltext_keymappings Określanie @table_id do table_id parametru.
Ostrzeżenie
Za pomocą sp_fulltext_keymappings tylko z parametrem table_id parametr jest odpowiednia dla małych tabel.
USE AdventureWorks2008R2;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id;
GO
W tym przykładzie zwraca DocIds i klucze pełnego tekstu z tabelaw następujący sposób:
docid |
key |
|
1 |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
3 |
4 |
4 |
4 |
B.Uzyskiwanie wartość DocId dla określonej wartości klucza
W poniższym przykładzie użyto instrukcja DECLARE, aby utworzyć zmienną lokalną @table_idi przypisać identyfikator ProductReview tabela jako jego wartość.Przykład wykonuje sp_fulltext_keymappings Określanie @table_id dla table_id parametr wartość NULL dla docid parametr i 4- key parametru.
Ostrzeżenie
Za pomocą sp_fulltext_keymappings tylko z parametrem table_id parametrnadaje się dla małej tabel.
USE AdventureWorks2008R2;
GO
DECLARE @table_id int = OBJECT_ID(N'Production.ProductReview');
EXEC sp_fulltext_keymappings @table_id, NULL, 4;
GO
W tym przykładzie zwraca następujące wyniki.
docid |
key |
|
4 |
4 |
4 |
Zobacz także