完全填充 
如果为全文目录请求完全填充,则为该目录所涉及的所有表中的所有行生成索引项。如果为表请求完全填充,则为该表中的所有行生成索引项。完全填充通常发生在当首先填充目录或索引,然后使用更改跟踪或增量填充来维护索引时。更改跟踪填充 
维护在系统表中已修改的行的记录,并将更改传播到全文索引。通过执行 sp_fulltext_table 启动更改跟踪并为 @action 参数指定 start_change_tracking。使用更改跟踪时,也指定从历史表取得更改并在全文索引中填充更改的时间:后台 
用 start_change_tracking 启动更改跟踪之后,可以通过为 @action 参数指定 start_background_updateindex 来执行 sp_fulltext_table。使用该选项可以在对表中的行进行更改时,将这些更改传播到全文索引。按需 
在该选项下,当执行 sp_fulltext_table 并为 @action 参数指定 update_index 时,将所有跟踪的更改存储到历史中并只将这些更改传播到全文索引。已调度 
可以使用 SQL 代理程序调度执行 sp_fulltext_table 并为 @action 参数指定 update_index 的周期性作业。这会将所有未完成的跟踪更改传播到索引。增量填充 
只调整自上次填充后添加、删除或修改的行的索引项。该功能要求索引表包含 timestamp 数据类型的列。如果表不包含 timestamp 列,则只能执行完全填充或更改跟踪填充。对不包含 timestamp 列的表请求进行增量填充将导致完全填充操作。如果为一个此前未与目录相关联的表定义新的全文索引,则对目录的下一个增量填充请求将为该表生成所有的项。如果自上次填充后更改了表的任何元数据,增量填充请求将作为完全填充执行。这包括更改列、索引或全文索引定义。每个填充请求都被发送到 Microsoft 搜索服务内的索引服务: 索引服务将适当的起始种子值传递给 SQL Server 处理程序。起始种子值包含这样的信息:如填充所涉及的表和索引,以及与上次为索引执行的完全填充或增量填充相关联的 timestamp 值(如果表有 timestamp 列)。
SQL Server 处理程序是一个驱动程序,包含从全文索引所涉及的 SQL Server 列析取文本数据的逻辑。该处理程序检索来自 SQL Server 的数据并将其传递回索引服务。对于完全填充,SQL Server 处理程序析取表中的所有行。对于增量填充,SQL Server 处理程序只从某些行中析取信息,这些行的当前 timestamp 值高于在起始种子中存储的、与上次填充相关联的 timestamp 值。
之后,索引服务将索引标识符和要建立索引的字符串传递给索引引擎。索引引擎消除 a、and 或 the 这类干扰词,还确定词的边界,并生成一个覆盖从索引服务传递来的词的全文索引。该语言分析因编写文本所用语言的不而异。SQL Server 2000 支持几种语言的语言分析;语言通过 sp_fulltext_column 指定。全文索引存储在全文目录文件中。
在填充的最后,索引服务计算一个新的起始种子值,以记录下一个增量填充的起始点。