sys.fulltext_index_fragments (Transact-SQL)
适用于: SQL Server Azure 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
权限
目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。