sys.fulltext_index_fragments (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例

全文索引使用称为 全文索引片段 的内部表来存储倒排索引数据。 此视图可用于查询有关这些片段的元数据。 此视图包含包含全文索引的每个表中每个全文索引片段的行。

列名称 数据类型 描述
table_id int 包含全文索引片段的表的对象 ID。
fragment_object_id int 与片段关联的内部表的对象 ID。
fragment_id int 全文索引片段的逻辑 ID。 此表的所有片段都是唯一的。
timestamp timestamp 与片段创建关联的时间戳。 较新的片段的时间戳大于旧片段的时间戳。
data_size int 片段的逻辑大小(以字节为单位)。
row_count int 片段中的单个行数。
status int 片段的状态,其中之一:

0 = 新建且尚未使用

1 = 在全文索引填充或合并期间用于插入

4 = 已关闭。 准备好进行查询

6 = 用于合并输入并准备查询

8 = 标记为要删除。 不用于查询和合并源。

状态为 4 或 6 表示片段是逻辑全文索引的一部分,可以查询;也就是说,它是可查询的片段。

注解

sys.fulltext_index_fragments目录视图可用于查询包含全文索引的片段数。 如果遇到全文查询性能缓慢的情况,可以使用sys.fulltext_index_fragments查询全文索引中的可查询片段数(状态 = 4 或 6),如下所示:

SELECT table_id, status FROM sys.fulltext_index_fragments  
   WHERE status=4 OR status=6;  

如果存在许多可查询片段,Microsoft 建议重新组织包含全文索引的全文目录,以将片段合并在一起。 若要重新组织全文目录,请使用 ALTER FULLTEXT CATALOGcatalog_name REORGANIZE。 例如,若要重新组织数据库中命名 ftCatalogAdventureWorks2022 全文目录,请输入:

USE AdventureWorks2022;  
GO  
ALTER FULLTEXT CATALOG ftCatalog REORGANIZE;  
GO  

权限

目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。

另请参阅

对象目录视图 (Transact-SQL)
填充全文索引