全文编程查询不返回结果 - SQL Server

时间:2011-07-05 16:46:21

标签: c# sql-server full-text-search

全文程序化查询不返回结果 - SQL Server

我在SQL Server 2008中使用全文搜索,并通过C#2008应用程序进行连接。我有一个连接到我的数据库的字符串,我已成功使用常规SELECT语句和存储过程多次。我正在尝试实现特定表的全文搜索,并且我已经为全文搜索配置了我的目录和索引。

但是,我正在以编程方式创建一个似乎不起作用的全文查询。它确实添加了一个我检查过的参数正确传递。如果我继续将搜索词粘贴到参数所在的位置并将其保留在引号内,我会从SSMS中的完全相同的查询中获得结果。但是当我运行代码时,我的SqlDataReader返回时没有结果。我怀疑它与没有使用双引号的转义有关。

以下是代码生成的内容(不返回任何结果):

Set NOCOUNT ON SELECT TOP 5 * FROM 
(SELECT JobID, ROW_NUMBER() OVER (ORDER BY createdDate) AS num 
  FROM Jobs 
  WHERE isActive='true' 
    AND ( CONTAINS(([JobDuties]), 'FORMSOF(INFLECTIONAL, \"@Argument0\")')) ) AS a 
          WHERE num > 0

然而,当我去SSMS并手动粘贴一个参数时(它有效):

Set NOCOUNT ON SELECT TOP 5 * FROM 
(SELECT JobID, ROW_NUMBER() OVER (ORDER BY createdDate) AS num 
  FROM Jobs 
  WHERE isActive='true' 
    AND ( CONTAINS(([JobDuties]), 'FORMSOF(INFLECTIONAL, "develop")')) ) AS a 
          WHERE num > 0

所以,我知道问题与论证有关,但我无法弄清楚。我有其他查询,我以编程方式完全相同的方式添加参数,它的工作原理。但他们不使用双引号。有线索吗?

谢谢!

0 个答案:

没有答案