FULLTEXTCATALOGPROPERTY (Transact-SQL)
Gibt Informationen zu Volltextkatalog-Eigenschaften in SQL Server 2014 zurück.
Gilt für: SQL Server (SQL Server 2008 bis zur aktuellen Version), SQL Database V12. |
Transact-SQL-Syntaxkonventionen
Syntax
FULLTEXTCATALOGPROPERTY ('catalog_name','property')
Argumente
Hinweis
Die folgenden Eigenschaften werden in zukünftigen Versionen von SQL Server nicht mehr bereitgestellt: LogSize und PopulateStatus.Vermeiden Sie die Verwendung dieser Eigenschaften in Neuentwicklungen, und planen Sie die Änderung von Anwendungen, die diese Eigenschaften derzeit verwenden.
catalog_name
Ein Ausdruck, der den Namen des Volltextkatalogs enthält.property
Ein Ausdruck, der den Namen der Volltext-Katalogeigenschaft enthält.In der folgenden Tabelle finden Sie eine Liste der Eigenschaften und eine Beschreibung der zurückgegebenen Informationen.Eigenschaft
Beschreibung
AccentSensitivity
Einstellung für die Unterscheidung nach Akzent.
0 = Keine Unterscheidung nach Akzent
1 = Unterscheidung nach Akzent
IndexSize
Logische Größe des Volltextkatalogs in Megabyte (MB).Enthält die Größe des semantischen Schlüsselausdrucks und von Dokumentähnlichkeitsindizes.
Weitere Informationen finden Sie unter "Hinweise" weiter unten in diesem Thema.
ItemCount
Anzahl der indizierten Elemente einschließlich aller Volltext-, Schlüsselausdruck- und Dokumentähnlichkeitsindizes in einem Katalog.
LogSize
Wird nur aus Gründen der Abwärtskompatibilität unterstützt.Gibt immer 0 zurück.
Größe (in Bytes) der kombinierten Gruppe von Fehlerprotokollen, die mit einem Volltextkatalog des Microsoft Search-Diensts verbunden sind.
MergeStatus
Gibt an, ob eine Masterzusammenführung ausgeführt wird.
0 = Masterzusammenführung befindet sich nicht in Verarbeitung
1 = Masterzusammenführung befindet sich in Verarbeitung
PopulateCompletionAge
Anzahl von Sekunden, die zwischen dem 01.01.1990, 00:00:00 Uhr, und der Beendigung des letzten Auffüllens des Volltextindex verstrichen sind.
Wird nur für vollständige und inkrementelle Durchforstungsvorgänge aktualisiert.Gibt 0 zurück, wenn keine Auffüllung aufgetreten ist.
PopulateStatus
0 = Im Leerlauf.
1 = Vollständiges Auffüllen wird ausgeführt
2 = Angehalten
3 = Gedrosselt
4 = Wird wiederhergestellt
5 = Herunterfahren
6 = Inkrementelles Auffüllen wird ausgeführt
7 = Index wird erstellt
8 = Datenträger vollAngehalten.
9 = Änderungsprotokollierung
UniqueKeyCount
Anzahl der eindeutigen Schlüssel im Volltextkatalog.
ImportStatus
Gibt an, ob der Volltextkatalog importiert wird.
0 = Der Volltextkatalog wird nicht importiert.
1 = Der Volltextkatalog wird importiert.
Rückgabetypen
int
Ausnahmen
Exception
Condition
Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.
In SQL Server 2014 kann ein Benutzer nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde.Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z. B. FULLTEXTCATALOGPROPERTY, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde.Weitere Informationen finden Sie unter sp_help_fulltext_catalogs (Transact-SQL).
Hinweise
FULLTEXTCATALOGPROPERTY ('catalog_name','IndexSize') prüft nur Fragmente mit dem Status 4 oder 6, wie in sys.fulltext_index_fragments dargestellt.Diese Fragmente sind ein Teil des logischen Index.Daher gibt die IndexSize-Eigenschaft nur die logische Indexgröße zurück.Während eines Indexmerge könnte die tatsächliche Indexgröße jedoch doppelt so groß sein wie die logische Größe.Um die tatsächliche Größe zu ermitteln, die von einem Volltextindex während eines Merge beansprucht wird, verwenden Sie die gespeicherte Systemprozedur sp_spaceused.Diese Prozedur prüft alle Fragmente, die einem Volltextindex zugeordnet sind.Wenn Sie das Wachstum der Volltextkatalogdatei einschränken und nicht genügend Speicherplatz für den Mergeprozess zulassen, schlägt die Volltextauffüllung möglicherweise fehl.In diesem Fall gibt FULLTEXTCATALOGPROPERTY ('catalog_name', 'IndexSize') 0 zurück, und der folgende Fehler wird in das Volltextprotokoll geschrieben:
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.
Anwendungen sollten die PopulateStatus-Eigenschaft nicht in einer Schleife auf Leerlauf überprüfen (Leerlauf bedeutet hier, dass das Auffüllen beendet wurde). Dadurch werden CPU-Zyklen von der Datenbank und von Volltextsuchprozessen abgezogen und Timeout-Fehler verursacht.Darüber hinaus ist es normalerweise besser, die entsprechende PopulateStatus-Eigenschaft auf Tabellenebene, TableFullTextPopulateStatus in der OBJECTPROPERTYEX-Systemfunktion, zu überprüfen.Diese und andere neue Volltexteigenschaften in OBJECTPROPERTYEX stellen Informationen mit höherer Granularität zur Volltextindizierung von Tabellen bereit.Weitere Informationen finden Sie unter OBJECTPROPERTYEX (Transact-SQL).
Beispiele
Im folgenden Beispiel wird die Anzahl der volltextindizierten Elemente in einem Volltextkatalog mit dem Namen Cat_Desc zurückgegeben.
USE AdventureWorks2012;
GO
SELECT fulltextcatalogproperty('Cat_Desc', 'ItemCount');
GO
Siehe auch
FULLTEXTSERVICEPROPERTY (Transact-SQL)
Metadatenfunktionen (Transact-SQL)
sp_help_fulltext_catalogs (Transact-SQL)