我想在存储 .doc/.docx(MS-Word) 文件的 varbinary(max) 类型的列上使用全文搜索编写查询。我的查询必须返回包含存储文件中的单词的记录。

这可能吗?

如果是,怎么做?(请写一个例子)

如果是,我们可以为其他语言(例如阿拉伯语、波斯语或 Unicode 字符)编写它吗?

预先谢谢你。

有帮助吗?

解决方案

您正在寻找的是全文索引,它在 SQL Server 2008 中得到了极大的改进。

有关介绍,我建议您查看以下文章:

一旦您理解了这一点并创建了自己的全文目录,您应该能够搜索如下内容:

SELECT ID, (other fields), DocumentColumn
FROM dbo.YourTable
WHERE CONTAINS(*, 'Microsoft Word')

是的,全文索引和搜索确实支持多种语言 - 请查看我发送给您的链接和 SQL Server 2008 联机丛书以了解详细信息!

马克

其他提示

如果您有SQL Server 2005或更高,是的,你只需要过滤器:

的http:// WWW .microsoft.com /下载/ details.aspx?FAMILYID = 60C92A37-719C-4077-B5C6-CAC34F4227CC&displaylang = EN

如果您有SQL Server 2000中,DOC文件可以被索引,但不是新的Office 2007,据我知道的格式(我听说你可以通过在服务器上安装Word 2007中借用的IFilter)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top