使用SQL Server导入和索引Microsoft Word文档
2007-11-11 10:15:46 来源:WEB开发网
问:我需要将Microsoft Word文档导入至sql server(WINDOWS平台上强大的数据库平台)并索引这些文档,以便在关系查询中使用这些文档。怎样导入和索引文档呢?
答:sql server(WINDOWS平台上强大的数据库平台)允许您以多种方式导入Word文档。让我们看看几种最常用的方法。请注意,在将文档导入至sql server(WINDOWS平台上强大的数据库平台)之前,您需要创建一个image数据类型列,用于存放数据。然后,您可以使用textcopy.exe命令行工具将image文件读入数据库,从而完成文档的导入操作。如果需要该工具的基本说明文档,请在命令提示状态下键入textcopy /?。将Word文档导入sql server(WINDOWS平台上强大的数据库平台)的另一个方法是使用Microsoft ActiveX Directory Object(ADO)Stream接口编写导入代码。您可以在Microsoft产品支持服务(PSS)的通过使用ADO Stream对象访问和修改sql server(WINDOWS平台上强大的数据库平台) BLOB数据一文中找到示例代码。
此外,您也可以将二进制数据移到sql server(WINDOWS平台上强大的数据库平台)中。有关这一方法的详细说明,请参阅PSS的使用ADO检索和更新sql server(WINDOWS平台上强大的数据库平台)文本域一文。移动二进制数据允许您将数据的一部分存放在数据库中,这在需要控制数据格式时尤其有用。例如,如果只需要数据中1,000到1,010之间的字节,导入二进制数据的速度远远高于使用ADO Stream接口的速度,这是由于sql server(WINDOWS平台上强大的数据库平台)从磁盘上检索数据的量大为减少。人们通常使用这一技术来存储位掩码,用于表示应用程序的开或关标志位。
sql server(WINDOWS平台上强大的数据库平台) 2000自带了说明了如何移动二进制数据的示例代码。如需查看该代码,只需在安装有sql server(WINDOWS平台上强大的数据库平台) 2000光盘上代码示例的驱动器上选择 Program FilesMicrosoft sql server(WINDOWS平台上强大的数据库平台)80ToolsDevToolsSamplesado路径。展开该可执行文件,在Visual Basic目录下查找Samples子目录。在Employee示例下,注意一下该代码是如何使用FillDataFields()函数的。
如需索引Word文档,sql server(WINDOWS平台上强大的数据库平台) 7.0和sql server(WINDOWS平台上强大的数据库平台) 2000都提供了全文搜索组件。该组件混合使用了多种技术,用以索引大型文本和image列。在执行全文搜索时,您需要指定image列所含的文件类型,以及从二进制数据中析取信息所需的筛选(filter)。有关使用全文索引的详细信息,请参阅sql server(WINDOWS平台上强大的数据库平台)在线书籍中的相关主题,并阅读David Jones 2000年7月发表在sql server(WINDOWS平台上强大的数据库平台)杂志网站上的名为构建更好的搜索引擎一文。请注意,索引Word文档并不会自动生成包含文档中关键字的一组关系表。但是,索引文件让您将这些Word文档包含在您的搜索中。以下是从数据中析取关键字的可行方式:
使用OLE自动处理从文档中读取用户定义的关键字。在装载该文档时将这些关键字保存在关系表中。
使用OLE自动处理打开文档并将其保存为文本(.txt)格式。为了析取重要的词语,您可以使用自己的“词语分析器”遍历该文本文件。文字分析器查看文档中的每个词语,去除一些无用文字,并将每个唯一的词语与其出现的次数一道存储起来。
在新的全文索引文档中搜索特定的关键字,并将这些关键字输入到关系表中。
sql server(WINDOWS平台上强大的数据库平台) 2000提供了多个强大的工具和接口,用于帮助用户实现二进制Microsoft Office文档的快速装载、搜索和检索。
- ››SQL Server 2008 R2 下如何清理数据库日志文件
- ››sqlite 存取中文的解决方法
- ››SQL2005、2008、2000 清空删除日志
- ››SQL Server 2005和SQL Server 2000数据的相互导入...
- ››sql server 2008 在安装了活动目录以后无法启动服...
- ››使用word强大的搜索和替换功能
- ››sqlserver 每30分自动生成一次
- ››sqlite 数据库 对 BOOL型 数据的插入处理正确用法...
- ››使用Win7自带屏幕录制功能的方法
- ››sql server自动生成批量执行SQL脚本的批处理
- ››使用linux中的quota教程
- ››sql server 2008亿万数据性能优化
更多精彩
赞助商链接