SqlServer 2005 简单的全文检索 |
复制代码 代码如下: --查看当前数据库状态 1为已经启用了全文索引 SELECT DATABASEPROPERTY (数据库名,IsFulltextEnabled) --打开FullText功能 execute sp_fulltext_databse enable --关闭此功能 execute sp_fulltext_databse disable --创建全文索引目录 --删除全文目录 DROP FULLTEXT 目录名 CREATE FULLTEXT CATALOG 目录名 -- 每个表只可以有一个全文索引,存放在指定的索引目录里,可以通过向导创建,也可以通过SQL创建 -- indexname是指已存在的基于指定表的唯一索引名.而不是唯一索引列名.如果索引不存在,需要先创建唯一索引. --删除全文索引 DROP FULLTEXT INDEX ON 表名 CREATE FULLTEXT INDEX ON 名称 (索引1,索引2...) KEY INDEX indexname ON 表名 --全文索引查询 Select * from 表名 where contains( 列名, "202*" or "2*" ) Select * from 表名 where FREETEXT( 列名, "202*" and "2*" ) /*注: FREETEXT语句的功能是在一个表的所有列或指定列中搜索一个自由文本格式的字符串,并 返回与该字符串匹配的数据行 。所以,FREETEXT语句所执行的功能又称做自由式全文查询 。 CONTAINS语句的功能 是在表的所有列或指定列中搜索:一个字或短语;一个字或短语的前缀;与一个字相近的另一 个字;一个字的派生字;一个重复出现的字 。 */ |