SqlServer 2005 简单的全文检索

时间秒杀一切 提交于 2019-12-27 21:45:53

简单的全文检索创建,直接贴刚测试的代码,注释写的很清楚:

--查看当前数据库状态 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语句的功能
    是在表的所有列或指定列中搜索:一个字或短语;一个字或短语的前缀;与一个字相近的另一
    个字;一个字的派生字;一个重复出现的字。
*/

--开心每一天.-_-

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!