sp_fulltext_keymappings (Transact-SQL)
Zwraca mapowania identyfikatorów dokumentu (DocIds) i pełnego tekstu klucz wartości.Kolumna DocId zawiera wartości dla bigint Liczba całkowita, która mapuje do określonej wartości klucz pełnotekstowego w tabela indeksowanej pełnego tekstu. DocId wartości, które spełniają warunek wyszukiwania są przekazywane z silnika pełny tekst do aparat bazy danych, gdzie są one mapowane do wartości klucz pełnego tekstu z tabela bazowa, którego dotyczy kwerenda.Kolumna klucz pełnego tekstu jest indeks unikatowy, wymagany w jednej kolumnie tabela.
sp_fulltext_keymappings { table_id | table_id, docid | table_id, NULL, key }
Parameters
table_id
Jest to identyfikator obiektu w tabela indeksowanej pełnego tekstu.Jeżeli określono nieprawidłowy table_id, zwracany jest błąd. Aby uzyskać więcej informacji na temat identyfikator tabela zobacz OBJECT_ID (języka Transact-SQL).docid
Jest to identyfikator wewnętrzny dokument (DocId), odpowiadającą wartości klucz.Nieprawidłowy docid wartość nie wygeneruje żadnych wyniki. Aby uzyskać informacje na temat identyfikatorów dokumentu zobacz Struktura indeksie pełnego tekstu.key
Jest wartością klucz pełnego tekstu z określonej tabela.Nieprawidłowy key wartość nie wygeneruje żadnych wyniki. Aby uzyskać informacje dotyczące całego tekstu klucz wartości, zobacz Jak Uzyskiwanie informacji o kolumnie klucz Full-Text (języka Transact-SQL).
Important Note: |
|---|
Aby uzyskać informacje dotyczące korzystania z 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 kolumna |
Typ danych |
Description |
|---|---|---|
DocId |
bigint |
Jest to kolumna identyfikatora (DocId) wewnętrzny dokument, który odpowiada wartości klucz. |
Klucz |
* |
Jest wartością klucz pełnego tekstu z określonej tabela. Jeśli klucze pełnego tekstu nie tabela mapowania, zwracany jest pustych zestaw wierszy. |
* Typ danych dla klucz jest identyczny z typem danych Kolumna klucz pełnego tekstu w tabela bazowa.
Uprawnienia
Ta funkcja jest publiczna i nie wymaga żadnych specjalnych uprawnień.
Remarks
W poniższej tabela przedstawiono wpływ przy użyciu jednego, dwóch lub trzech parametrów.
Ten parametr list… |
Ma to result… |
|---|---|
table_id |
Kiedy wywoływana tylko z table_id parametr, sp_fulltext_keymappings zwraca wszystkie wartości pełnego tekstu kluczy (klucz) z określonej tabela bazowa, wraz z DocId, odpowiadający każdy klucz. Dotyczy to także klucze znajdujące się w oczekiwaniu na usunięcie. Ta funkcja jest przydatna do rozwiązywania problemów z różnych problemów.Jest to szczególnie przydatne przy przeglądaniu zawartości indeks pełnotekstowy, wybranego klucz pełnego tekstu nie jest typu Liczba całkowita danych.Obejmuje to przyłączanie się do wyniki sp_fulltext_keymappings z wyniki sys.dm_fts_index_keywords_by_document.Aby uzyskać więcej informacji zobaczsys.dm_fts_index_keywords_by_document (Transact-SQL). Ogólnie rzecz biorąc zaleca się jednak, jeśli to możliwe, należy wykonać sp_fulltext_keymappings parametrów określających konkretnego klucz pełnego tekstu lub DocId.Jest to znacznie bardziej efektywne niż zwracanie całej mapy klucz, szczególnie w przypadku bardzo dużych tabela, dla których koszt wydajności zwracanie całego klucz mapy mogą być istotne. |
table_id, docid |
Jeśli tylko table_id i docid określono, docid musi być niepustych i określić prawidłowy DocId w określonej tabela. Ta funkcja jest przydatna do izolowania niestandardowe klucz pełnotekstowego opartego na tabela bazowa, które odpowiada DocId określonego indeksu pełnotekstowego. |
table_idNULL, key |
Jeśli istnieją trzy parametry, drugi parametr musi mieć wartość NULL, a key musi być niepustych i określ prawidłową wartość klucz pełnego tekstu z określonej tabela. Ta funkcja jest przydatna w izolowanie DocId, odpowiadający określonym pełnotekstowego klucz z tabela bazowa. |
Błąd jest zwracany w jeden z następujących warunków:
Określono nieprawidłowy table_id.
Tabela nie jest indeksowania pełnotekstowego.
Wartość NULL, po napotkaniu dla parametru, które mogą być niepustych
Przykłady
Uwaga
Przykłady w tej sekcji użycia tabela Production.ProductReview the AdventureWorks przykładowej bazy danych.Można utworzyć tego indeksu, wykonując podane dla tabela ProductReview w przykładzie CREATE FULLTEXT INDEX (Transact-SQL).
A.Uzyskiwanie wszystkie wartości kluczy i DocId
W poniższym przykładzie użyto ZADEKLAROWAĆ Instrukcja tworzenie lokalnych zmiennych, @table\_idi przypisać identyfikator ProductReview Tabela jako jego wartość. W przykładzie wykonuje sp_fulltext_keymappings Określanie@table_id dla table_id parametr.
Uwaga
Za pomocą sp_fulltext_keymappings z tylko table_id parametr jest odpowiednia dla małych tabel.
USE AdventureWorks;
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 tabela, w następujący sposób:
docid |
key |
|
1 |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
3 |
4 |
4 |
4 |
B.Uzyskiwanie wartości DocId dla określonej wartości klucz
W poniższym przykładzie użyto instrukcja DECLARE do utworzenia zmiennej lokalnej @table\_idi przypisać identyfikator ProductReview Tabela jako jego wartość. W przykładzie wykonuje sp_fulltext_keymappings Określanie@table_id dla table_id Parametr wartość NULL dla docid Parametr a 4 key parametr.
Uwaga
Za pomocą sp_fulltext_keymappings z tylko table_id Parametrnadaje się dla małej tabel.
USE AdventureWorks;
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 |
Historia zmian
Microsoft Learning |
|---|
Dodano przykłady. |
See Also
.gif)
Important Note: