创建全文索引的命令是CREATE FULLTEXT INDEX.部分语法如下所示;
CREATE FULLTEXT INDEX ON table_name
[ ( { column_name
[ TYPE COLUMN type_column_name ]
[ LANGUAGE language_term ]
} [ ,...n]
) ]
KEY INDEX index_name
[ ON fulltext_catalog_name ]
[ WITH [ ( ] <with_option> [ ,...n] [ ) ] ]
[;]
<with_option>::=
{
CHANGE_TRACKING [ = ] { MANUAL | AUTO | OFF [, NO POPULATION ] }
| STOPLIST [ = ] { OFF | SYSTEM | stoplist_name }
}
CREATE FULLTEXT INDEX参数
| 参 数 | 描 述 |
| table_name | 这个参数指定要创建全文索引的表的名称,一个表只允许有一个全文索引 |
| column_name | 这个参数定义要建立全文索引的一列或多列的名字,数据类型只能为varchar,nvarchar、char、nchar、xml、varbinary、text、ntext. image |
| type_column_name | TYPE COLUMN关键字标记用来指定表中的列,告诉全文索引在varblnary(max)或image数据类型的列中保存了什么类璀的数据.SQL Server可以解释不同的文件类型,但是它必须准确地知道如何去处理 |
| language_term | LANGUAGE为可选关键字,也可以用在列列表中用来指出列中数据的语言.指出语言能帮助SQL Server确定在全文索引处理过程中如何进行数据解析及如何进行语言解释可以在sys.fulltext_languages表中查询到有哪些可使用的语言 |
| index_name | 为了能在某个表上建立全文索引,表必须包含一个唯一的单键非空列。例如,一个单列主键或·一个非空的且具有UNIQUE约束的列.CREATE FULLTEXT INDEX命令的KEY INDEX子句标识指定表上所需的唯一键列 |
| fulltext_catalog_name | ON子句指定全文索引要存储的全文目录。如果在全文索引创建前设定过默认全文目录,而且没有使用该选项,那么该全文索引l将创建在默认的全文目录中.如果没有定义默认全文目录.全文索引的刨建将会失败 |
| CHANGE_TRACKING [ = ] { MANUAL | AUTO | OFF [, NO POPULATION ] } | 这个参数决定全文服务如何监测到用户数据的变化.基于这个设置,全文索引可以 随着表数据的更新而自动更新,也可以选择在某个所选择的时间点或者计划表手动更新全文索引,指定AUTO选项后,全文索引会随着表数据的修改而自动更新。MANUAL选项意味着,全文索引要通过用户手动传播或是通过SQL Servcr代理按计划传播.OFF选项意味着.SQLServer不保留对索引数据的更改。声明含NO POPULATION的OFF选项意味着,全文索引建立之后不会被立即填充.在使用这个选项时,全文索引只有在用户执行ALTER FULLTEXT INDEX后才会被填充。 |
| | STOPLIST [ = ] { OFF | SYSTEM | stoplist_name | 非索引字表包含非索引字的列表,它是可以被搜索忽略的字符串.默认选项是SYSTEM ,意思是使用默认系统非索引字表。当这个选项设为OFF时.不使用非索引字表。否则,指定stoplist_name来使用用户定义的非索引字表 |
例如,在AdventureWorks数据库的Production.Document表上建立一个新的全文索引。全文索引的列是DocumentSummary,
FileExtension是包含了指向列的文档类型的指针的列:
USE AdventureWorks
GO--指定全文索引基于哪一个表:
CREATE FULLTEXT INDEX ON Production.Document--指定全文索引的列,列类型指针说明了列的文档类型
(DocumentSummary,Document TYPE COLUMN FileExtension)--标识键(表的非空唯一列)的名称:
KEY INDEX PK_Document_DocumentID--ON子句指定全文索引要存储的全文目录:
ON cat_Production_Document--指定全文索引的填充方式:
WITH CHANGE_TRACKING AUTO,STOPLIST=SYSTEM