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。 例如,若要重新组织 ftCatalog 数据库中名为 AdventureWorks2022 的全文目录,请输入:

USE AdventureWorks2022;  
GO  
ALTER FULLTEXT CATALOG ftCatalog REORGANIZE;  
GO  

权限

目录视图中元数据的可见性仅限于用户拥有的安全对象,或者向用户授予了某些权限的安全对象。

另请参阅

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