SQL Server如何实现全文检索查询

原创|其它|编辑:郝浩|2009-11-16 10:58:35.000|阅读 645 次

概述:因为项目需要,需要对上传的文件内容进行查询。通过MSDN了解到Windows索引服务可以实现对文件的全文检索,并可以通过SQL Server进行查询。项目将这两者结合,实现对上传文件的全文检索的解决方案。

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

  因为项目需要,需要对上传的文件内容进行查询。通过MSDN了解到Windows索引服务可以实现对文件的全文检索,并可以通过SQL Server进行查询。项目将这两者结合,实现对上传文件的全文检索的解决方案。

  方案概要:

  1. 改变文件存储时的文件名

  2. 配置索引服务器,并将索引服务器与MS SQL Server关联。

  3. 修改SQL语句,将进行全文查询语句的内容加入查询条件中

  文件的存储方式:

  为了方便存储以及方便索引,我们将上传的文件存储到一个目录里面,为了保证上传的文件名不重复,采用GUID作为文件名,并且通过这个GUID于数据库记录相关联。同时,文件的后缀还保持原始文件的后缀,让索引服务能够识别该文档。

  配置索引服务

  进入计算机管理(Computer Management)程序(右键”我的电脑”->”管理”),并找到索引服务(Index Service)

  配置索引服务的功能

  (1)右键选择索引服务弹出一个菜单

  (2)选择New->Catalog(新建一个编录)

  设置新增加的编录

  (1)输入编录的名字(这个名字需要与数据库进行关联,要注意命名,这里假设DCSII

  (2)点Browse进入选择索引服务运行目录窗体

  (3)选择前面创建的索引运行目录(任意地方)

  (4)点确定完成本次操作

  在编录创建号以后,需要给编录增加目录

  (1)右键选择刚刚创建的编录

  (2)选择New->Directory(新建目录)

  新建索引目录

  (1)点击Browse进入目录选择页面

  (2)选择要进行全文检索文件的目录

  (3)确定完成本次操作

  不同数据库平台的互连一般称之为数据库的异构服务,现在各大数据库之间都可以实现这样的异构互连,只是各厂商的具体实现技术不一样,如:在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。

  本文的测试环境为:

  操作系统: WINDOWS2000 SERVER (繁体系统)

  安装数据库: SQLSERVER2000(英文版)和VFP6.0

  具体实现步骤:

  1. 要求pc机上安装VFP6.0和SQL Server2000软件。

  2. 配置windows的ODBC数据源。

  开始菜单—》程式集—》系统管理工具—》资料数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:添加—》选择MICROSOFT FOXPRO VFP DRIVER(*.DBF)—》在ODBC VISUAL FOXPRO SETUP画面中, 自定义数据源名称(随意如:VFPTEST)—》DATABASE TYPE可以选择VISUAL FOXPRO DATABSE(*.DBC)或者FREE TABLE DIRECTORY(*.DBF如选择这种可以自由的选择目录)—》OK完成。

  配置和测试ODBC完成!

  3. 配置sqlserver2000中的连接服务器

  企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称; 选其他数据源; 指定程序名称为:MICROSOFT OLE DB PROVIDER FOR ODBC DRIVER; 产品名称可不填; 数据源指定刚才ODBC中定义好的数据源名称; 提供程序字符串按以下格式填写:User ID=username;Password=userpasswd(或者按如下格式:UID=username;PWD=userpasswd),这里的用户名和密码对应所要连接的VFP数据库中的用户名和密码 —》 安全性标签页里:设置用此安全上下文进行,并录入VFP的数据库用户名和密码—》服务器选项标签页可默认—》确定。

  4.准备工作全部完成!

  在sqlserver企业管理器—》安全性—》连接服务器打开刚建好的连接服务器—》点击表,即可在右边窗口看到该VFP数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在sqserver的查询分析器中用具体sql实现!访问表时,使用格式为: [连接服务器名]..[VFP用户].[表名]。更详细具体的使用这里不再赘述。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:网络转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP