重建包含存储 PDF 表的目录时出现以下错误(它适用于 Word 文档)。
警告:在为表或索引视图“[Test].[dbo].[Table_1]”(表或索引视图 ID 为“2105058535”,数据库 ID 为“6”)进行全文索引填充期间未找到合适的过滤器,完整-文本键值“911”。该行的某些列未编入索引。
我按照 Adobe 的安装程序运行了以下命令:
EXEC sp_fulltext_service @action='load_os_resources', @value=1; -- update os resources
EXEC sp_fulltext_service 'verify_signature', 0 -- don't verify signatures
EXEC sp_fulltext_service 'update_languages'; -- update language list
EXEC sp_fulltext_service 'restart_all_fdhosts'; -- restart daemon
EXEC sp_help_fulltext_system_components 'filter'; -- view active filters
最后一个确实返回正确的过滤器路径:
filter .pdf E8978DA6-047F-4E3D-9C78-CDBE46041603 C:\Program Files\Adobe\Adobe PDF iFilter 11 for 64-bit platforms\bin\PDFFilter.dll 11.0.1.36 Adobe Systems, Inc.
我已经添加了路径C:\Program Files\Adobe\Adobe PDF iFilter 11 for 64-bit platforms\bin\
并验证它是否有效。
我已经重新启动了服务(甚至重新启动了机器)。我还通过运行 Windows SDK 附带的 filtdump.exe 进行了验证,以验证过滤器在 SQL Server 2008 R2 之外是否可以正常工作。
此外,我还重新配置了 sql server 服务,以便它们使用管理员帐户运行(以防问题与权限有关)。
最后,我尝试了几台机器(一些使用 SP1 运行)并且结果相同。注册 DLL 没有问题... SQL Server 根本不调用过滤器。请注意,我尝试将文档上传到具有“未知”扩展名(例如“.xyz”)的同一个表中,并且得到相同的结果......就像“.pdf”是未注册的扩展名一样(但是它是)。
有什么建议吗?