Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Zwraca informacje o właściwościach katalogu pełnego tekstu w SQL Server.
Transact-SQL konwencje składni
Składnia
FULLTEXTCATALOGPROPERTY ('catalog_name' ,'property')
Arguments
Uwaga / Notatka
Następujące właściwości zostaną usunięte w przyszłej wersji SQL Server: LogSize oraz PopulateStatus. Unikaj używania tych właściwości w nowych projektach deweloperskich i planuj modyfikację aplikacji, które obecnie z nich korzystają.
catalog_name
To wyrażenie zawierające nazwę katalogu pełnego tekstu.
właściwość
To wyrażenie zawierające nazwę pełnotekstowej właściwości katalogowej. Tabela zawiera listę właściwości i opisuje zwrócone informacje.
| Majątek | Description |
|---|---|
| AccentSensitivity | Ustawienie wrażliwości na akcent. 0 = Niewrażliwość na akcent 1 = Wrażliwy na akcent |
| IndexSize | Logiczny rozmiar katalogu pełnego tekstu w megabajtach (MB). Zawiera rozmiar semantycznych kluczowych fraz i indeksów podobieństwa dokumentów. Więcej informacji można znaleźć w sekcji "Uwagi w dalszej części tego tematu". |
| ItemCount | Liczba indeksowanych pozycji, w tym wszystkie pełne teksty, frazy kluczowe i indeksy podobieństw dokumentów w katalogu |
| LogSize | Obsługiwane tylko ze względu na kompatybilność wsteczną. Zawsze zwraca 0. Rozmiar w bajtach zestawu dzienników błędów powiązanych z katalogiem pełnotekstowym Microsoft Search Service. |
| MergeStatus | Wskazuje, czy trwa połączenie główne. 0 = master merge nie jest w toku 1 = Master merge jest w toku |
| PopulateCompletionAge | Różnica w sekundach między ukończeniem ostatniej pełnej grupy indeksowej a 01/01/1990 00:00:00. Aktualizowane tylko do pełnych i stopniowych crawlów. Zwraca 0, jeśli nie wystąpiła populacja. |
| PopulateStatus | 0 = Bezczynność 1 = Pełna populacja w toku 2 = Zatrzymane 3 = Ograniczenie 4 = Odzyskiwanie 5 = Zamknięcie 6 = Stopniowa populacja w toku 7 = Indeks budynku 8 = Dysk jest pełny. Wstrzymana. 9 = Śledzenie zmian |
| UniqueKeyCount | Liczba unikalnych kluczy w katalogu pełnym tekstem. |
| ImportStatus | Wskazuje, czy katalog pełnotekstowy jest importowany. 0 = Katalog pełnego tekstu nie jest importowany. 1 = Katalog pełnotekstowy jest importowany. |
Typy zwracane
int
Exceptions
Zwraca NULL w przypadku błędu lub jeśli wywołujący nie ma uprawnień do podglądania obiektu.
W SQL Server użytkownik może przeglądać jedynie metadane zabezpieczalnych urządzeń. Te zabezpieczenia to te, które użytkownik posiada lub do których otrzymał uprawnienia. W związku z tym wbudowane funkcje generujące metadane, takie jak FULLTEXTCATALOGPROPERTY, mogą zwracać NULL, jeśli użytkownik nie ma żadnych uprawnień do obiektu. Więcej informacji można znaleźć w sp_help_fulltext_catalogs (Transact-SQL).
Uwagi
FULLTEXTCATALOGPROPERTY ('catalog_name','IndexSize') patrzy tylko na fragmenty o statusie 4 lub 6, jak pokazano na sys.fulltext_index_fragments. Te fragmenty są częścią indeksu logicznego. W związku z tym własność IndexSize zwraca jedynie logiczny rozmiar indeksu.
Podczas scalania indeksów rzeczywisty rozmiar indeksu może jednak być dwukrotny względem logicznego rozmiaru. Aby znaleźć rzeczywisty rozmiar zużywany przez pełny tekst indeksu podczas scalania, użyj procedury sp_spaceused system stored procedure. Procedura ta analizuje wszystkie fragmenty powiązane z indeksem pełnym tekstem.
Pełna populacja tekstów może się nie zdać. Może się nie udać, jeśli ograniczysz wzrost pliku katalogu pełnego tekstu i nie zostawisz wystarczająco dużo miejsca na proces scalania. W tym przypadku FULLTEXTCATALOGPROPERTY ('catalog_name','IndexSize') zwraca 0 i następujący błąd jest zapisywany do dziennika pełnego tekstu:
Error: 30059, Severity: 16, State: 1. A fatal error occurred during a full-text population and caused the population to be cancelled. Population type is: FULL; database name is FTS_Test (id: 13); catalog name is t1_cat (id: 5); table name t1 (id: 2105058535). Fix the errors that are logged in the full-text crawl log. Then, resume the population. The basic Transact-SQL syntax for this is: ALTER FULLTEXT INDEX ON table_name RESUME POPULATION.
Ważne jest, aby aplikacje nie czekały w ciasnej pętli, sprawdzając, czy właściwość PopulateStatus stanie się bezczynna. Stanie się bezczynnym oznacza, że populacja się zakończyła. Ta kontrola odbiera cykle procesora od bazy danych i procesów wyszukiwania pełnego tekstu, powodując przerwy czasowe. Zazwyczaj lepszym rozwiązaniem jest sprawdzenie odpowiadającej mu właściwości PopulateStatus na poziomie tabeli, TableFullTextPopulateStatus w funkcji systemowej OBJECTPROPERTYEX. Ta oraz inne nowe pełnotekstowe właściwości w OBJECTPROPERTYEX dostarczają bardziej szczegółowych informacji o tabelach indeksujących pełnotekstowe. Aby uzyskać więcej informacji, zobacz OBJECTPROPERTYEX (Transact-SQL).
Przykłady
Poniższy przykład zwraca liczbę pełnych tekstowych indeksowanych pozycji w katalogu pełnym tekstu o nazwie Cat_Desc.
USE AdventureWorks2022;
GO
SELECT fulltextcatalogproperty('Cat_Desc', 'ItemCount');
GO
Zobacz też
FULLTEXTSERVICEPROPERTY (Transact-SQL)
Funkcje metadanych (Transact-SQL)
sp_help_fulltext_catalogs (Transact-SQL)