SQL SERVER 2000的全文检索功能全接触

一、安装Sql Server 2000的全文检索

    如果安装Sql Server 2000时,按缺省的典型安装,是不会安装全文检索的。要么在安装时,选自定义安装,然后将全文检索选项选上;如果没有安装此功能,重新运行安装程序,在“安装选择”时,选“对现有Sql Server 实例进行升级、添加或删除组件”,在“选择组件”时,要选择服务器组件中的全文检索子组件,完成安装即可。

     存储过程'fulltextserviceproperty'可以验证搜索服务是否已经安装。在查询分析器中运行SELECT fulltextserviceproperty('IsFulltextInstalled'),返回值:1 = 已安装全文组件;0 = 未安装全文组件;NULL = 输入无效或发生错误。

二、如何建立全文检索

我们以在NorthWind数据库的Products表上建立全文检索为例:

步骤:

1、  打开NorthWind数据库,右键Products表,选择“全文索引表”,“在表上定义全文索引”,为其创建全文目录。在“全文索引向导”中,选择你需要全文查询条件的列(可以是文本或图像),我们选择ProductnameQuantityPerUnit列。然后下一步,输入一个新的目录prodCatalog,点击下一步。在填充调度一项里,我们可以暂时不建立填充调度。接着“下一步”,完成全文索引向导。完成后,我们可以看到在NorthWind数据库的“全文目录”里,多了一个全文目录prodCatalog。右键prodCatalog属性,可以看到其状态、表、调度情况。

2、  右键全文目录proCatalog “启动完全填充”,系统会出现“全文目录填充成功启动”。

三、使用Transact-SQL语言进行Sql Server 2000全文检索

      这时,我们可以使用Transact-SQL进行全文检索了,我们使用CONTAINSFREETEXT等谓词。如:下面的示例查找包含词"bottles"且价格为$15.00 的所有产品。 

USE Northwind
GO
SELECT ProductName
FROM Products
WHERE UnitPrice = 15.00
   AND Contains(*, 'bottles')
GO

下例搜索产品描述中含有与 bread、candy、dry 和 meat 相关的词语的所有产品类别,如 breads、candies、dried 和 meats 等。

USE Northwind
GO
SELECT CategoryName
FROM Categories
WHERE FREETEXT (Description, 'sweetest candy bread and dry meat' )
GO

      这时,我们可以使用Transact-SQL进行全文检索了,我们使用CONTAINSFREETEXT等谓词。如:下面的示例查找包含词"bottles"且价格为$15.00 的所有产品。 

USE Northwind
GO
SELECT ProductName
FROM Products
WHERE UnitPrice = 15.00
   AND Contains(*, 'bottles')
GO

下例搜索产品描述中含有与 bread、candy、dry 和 meat 相关的词语的所有产品类别,如 breads、candies、dried 和 meats 等。

USE Northwind
GO
SELECT CategoryName
FROM Categories
WHERE FREETEXT (Description, 'sweetest candy bread and dry meat' )
GO

1、  打开NorthWind数据库,右键Products表,选择“全文索引表”,“在表上定义全文索引”,为其创建全文目录。在“全文索引向导”中,选择你需要全文查询条件的列(可以是文本或图像),我们选择ProductnameQuantityPerUnit列。然后下一步,输入一个新的目录prodCatalog,点击下一步。在填充调度一项里,我们可以暂时不建立填充调度。接着“下一步”,完成全文索引向导。完成后,我们可以看到在NorthWind数据库的“全文目录”里,多了一个全文目录prodCatalog。右键prodCatalog属性,可以看到其状态、表、调度情况。

2、  右键全文目录proCatalog “启动完全填充”,系统会出现“全文目录填充成功启动”。

三、使用Transact-SQL语言进行Sql Server 2000全文检索

      这时,我们可以使用Transact-SQL进行全文检索了,我们使用CONTAINSFREETEXT等谓词。如:下面的示例查找包含词"bottles"且价格为$15.00 的所有产品。 

USE Northwind
GO
SELECT ProductName
FROM Products
WHERE UnitPrice = 15.00
   AND Contains(*, 'bottles')
GO

下例搜索产品描述中含有与 bread、candy、dry 和 meat 相关的词语的所有产品类别,如 breads、candies、dried 和 meats 等。

USE Northwind
GO
SELECT CategoryName
FROM Categories
WHERE FREETEXT (Description, 'sweetest candy bread and dry meat' )
GO

      这时,我们可以使用Transact-SQL进行全文检索了,我们使用CONTAINSFREETEXT等谓词。如:下面的示例查找包含词"bottles"且价格为$15.00 的所有产品。 

USE Northwind
GO
SELECT ProductName
FROM Products
WHERE UnitPrice = 15.00
   AND Contains(*, 'bottles')
GO

下例搜索产品描述中含有与 bread、candy、dry 和 meat 相关的词语的所有产品类别,如 breads、candies、dried 和 meats 等。

USE Northwind
GO
SELECT CategoryName
FROM Categories
WHERE FREETEXT (Description, 'sweetest candy bread and dry meat' )
GO
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值