加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

sql-server-2005 – 在SQL Server 2005中使用PDF文件进行全文搜

发布时间:2021-01-13 16:08:08 所属栏目:编程 来源:网络整理
导读:我在SQL Server 2005中索引PDF文件时碰着了一个稀疏的题目,但愿有人可以提供辅佐.我的数据库有一个名为MediaFile的表,个中包括以下字段:MediaFileId int identity pk,FileContent image和FileExtension varchar(5).我的Web应用措施在此表中存储文件内容没有

我在SQL Server 2005中索引PDF文件时碰着了一个稀疏的题目,但愿有人可以提供辅佐.我的数据库有一个名为MediaFile的表,个中包括以下字段:MediaFileId int identity pk,FileContent image和FileExtension varchar(5).我的Web应用措施在此表中存储文件内容没有任何题目,而且可以或许在doc,xls等上行使全文搜刮而没有任何题目 – 独一不起浸染的文件扩展名是PDF.在此表上执行全文搜刮时,我知道在表中生涯的PDF文件中存在的单词,搜刮功效中不会返回这些文件.

操纵体系是Windows Server 2003 SP2,我已经安装了Adobe iFilter 6.0.凭证this blog entry的声名,我执行了以下呼吁:

exec sp_fulltext_service 'load_os_resources',1;
exec sp_fulltext_service 'verify_signature',0;

在此之后,我从头启动了SQL Server,并通过执行以下呼吁验证是否正确安装了PDF扩展的iFilter:

select document_type,path from sys.fulltext_document_types where document_type = '.pdf'

这将返回以下信息,看起来正确:

document_type: .pdf
path: C:Program FilesAdobePDF IFilter 6.0PDFFILT.dll

然后我(从头)在MediaFile表上建设了索引,选择FileContent作为索引列,将FileExtension作为其范例.该领导将建设索引并乐成完成.为了测试,我正在执行这样的搜刮:

SELECT MediaFileId,FileExtension FROM MediaFile WHERE CONTAINS(*,'"house"');

这将返回包括此术语但不包括任何PDF文件的DOC文件,但我知道表中必定有PDF文件包括单词house.

趁便说一句,我让这个事变了几分钟,上面的搜刮返回了正确的PDF文件,但其后它没有明明的缘故起因再次遏制事变.

关于什么可以阻止SQL Server 2005索引PDF的任何设法,纵然安装了Adobe iFilter而且好像已加载?

办理要领

感谢伊万.打点最终通过从新开始统统来实现这一点.好像完成使命的次序会发生很大的差异,而且在加载iFilter后关联博客上封锁’load_os_resources’配置的提议也许不是最好的选择,由于这会导致iFilter从头启动SQL Server时不加载.

假如我没记错的话,最终对我有效的步调次序如下:

>确保表中没有索引(假如是,则删除它)
>安装Adobe iFilter
>执行呼吁exec sp_fulltext_service’load_os_resources’,1;
>执行呼吁exec sp_fulltext_service’verify_signature’,0;
>从头启动SQL Server
>验证PDF iFilter已安装
>在表格上建设全文索引
>完全从头索引

尽量这样做了,但我确信在最终开始正常事变之前,我已经执行了屡次这些步调.

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读