2012-01-09 94 views
1

我在varbinary(max)列上创建了一个全文搜索索引并将文件内容插入此列(文件如docx,xl​​sx,txt,...)我创建了一个指定内容类型的扩展列。但是当我查询包含这个表时,在varbinary数据类型上使用全文搜索来搜索文件内容

SELECT * 
    FROM tblFiles 
    WHERE CONTAINS(tblFiles.FileContent, 'web OR webserver'); 

没有结果显示。为什么?

+0

你的模式是什么样的?你是如何创建全文索引的?你的桌子有多大?在测试查询之前,您在创建索引之后等待多久? – RickNZ 2012-01-09 14:46:50

+0

我首先为我的数据库创建一个目录,并通过右键单击表格并选择全文索引并选择定义全文索引来创建全文索引。创建索引后我没有等待,为什么我应该等待? – mshirdel 2012-01-09 14:51:38

回答

0

我发现为什么我的查询不工作。因为插入到数据库中的文件是docx,并且在我的数据库中不存在此格式的任何过滤器。我插入了一个doc文档并查询它。它工作正常。 :)

谢谢。

0

定义全文索引后可能需要稍等一会,因为索引本身是在后台创建的;这是一个异步过程,不是同步过程。对于一张小桌子来说,它可能并不明显,但对于一个大桌子来说,它会是。

此外,请确保您的文件类型列中的类型以点开头:.docx而不仅仅是docx