SQL Server数据库实现全文检索的一个完整的例子

数据库 SQL Server
SQL Server数据库怎么实现全文检索呢?本文通过一个完整的例子对全文检索的步骤进行了介绍,希望能够对您有所帮助。

SQL Server数据库操作中,有时候由于工作的需求可能要实现全文检索的功能。那么全文检索是怎么实现的呢?实现步骤是怎样的呢?本文我们先介绍实现的步骤,然后通过一个完整的例子对全文检索的步骤进行演练,希望能够对您有所帮助。

实现全文检索的步骤如下:
(1)启动数据库的全文处理功能(sp_fulltext_datebase); 
(2)建立全文目录(sp_fulltext_catalog); 
(3)在全文目录中注册需要全文索引的表(sp_fulltext_table); 
(4)指出表中需要全文检索的列名(sp_fulltext_column) 
(5)为表创建全文索引(sp_fulltext_table); 
(6)填充全文索引(sp_fulltext_catalog)。

--在执行该脚本程序之前启动sql server的全文搜索服务,即microsoft search服务。

  1. use pubs --打开数据库   
  2.  
  3. go  

--检查pubs是否支持全文索引,如果不支持全文索引,则使用sp_fulltext_datebase打开该功能。

  1. if (select databaseproperty ('pubs','IsFulltextEnables'))=0   
  2.  
  3. execute sp_fulltext_database 'enable'  

--建立全文目录FT_pubs。

  1. execute sp_fulltext_catalog 'FT_pubs','create'  

--为titles表建立全文索引数据元。

  1. execute sp_fulltext_table 'titles','FT_pubs','UPKCL_titleidind'  

--设置全文索引列名 。

  1. execute sp_fulltext_column 'titles','title','add'   
  2.  
  3. execute sp_fulltext_column 'titles','notes','add'  

--建立全文索引。

  1. execute sp_fulltext_table 'FT_pubs','activate'  

--填充全文索引目录。

  1. execute sp_fulltext_catalog 'FT_pubs','start_full'   
  2.  
  3. GO  

--检查全文目录填充情况。 

  1. WHILE FulltextCatalogProperty("FT_pubs','PopulateStatus')<>0   
  2.  
  3. BEGIN  

--如果全文目录正处于填充状态,则等待30秒后再检测一次。

  1. WAITFOR DELAY ‘0:0:30’   
  2.  
  3. END  

--全文目录填充完成后,使用全文目录检索。

--查询title列或notes列中包含有database或computer字符串的图书名称。

  1. SELECT title FROM title   
  2.  
  3. where CONTAINTS(title,'database')   
  4.  
  5. or contains(notes,'database')   
  6.  
  7. or contains(title,'computer')   
  8.  
  9. or contains(notes,'computer') 

关于SQL Server数据库实现全文检索的知识就介绍到这里了,希望本次的介绍能够带给您一些收获。

【编辑推荐】

  1. Oracle提示“资源正忙,需指定nowait”的解决方案
  2. 不同数据库分页技术的实现及高效率分页技术三方案
  3. 如何查询SQL Server数据库没有主键的表并增加主键
  4. SQL Server数据库如何按百分比查询出表中的记录数
  5. MySQL数据库中COUNT(*)和DISTINCT的使用及效率研究
责任编辑:赵鹏 来源: 博客园
相关推荐

2010-11-10 14:18:15

SQL SERVER全

2010-06-17 10:56:57

SQL Server数

2010-06-28 09:53:11

SQL Server数

2010-07-01 10:20:41

SQL Server

2011-08-04 12:49:31

SQL Server数重复数据

2010-07-21 09:58:21

SQL Server全

2011-08-15 11:24:46

SQL Server事务

2011-05-06 14:19:29

ExcelSQL Server

2010-10-20 10:55:54

SQL Server全

2009-07-06 18:18:41

SQL Server全

2010-07-09 10:36:22

SQL Server

2011-04-06 15:36:56

SQL Server数

2010-07-16 15:42:32

SQL Server

2010-07-22 09:48:14

SQL Server全

2011-04-22 10:40:52

SQL ServerWord检索

2011-08-30 12:34:18

Oracle C#Oracle Text

2011-04-06 11:34:52

SQL Server数查询优化

2011-08-02 13:26:38

JavaBeanSQL Server

2011-03-30 15:36:31

SQL Server

2011-04-02 13:21:34

SQL Server数据库全文索引
点赞
收藏

51CTO技术栈公众号