2011-01-11 98 views
1

我有一個SQL 2008數據庫,其中一個表的全文目錄設置,目標是能夠從一個asp.net c#網站進行一個自由文本搜索,自由文本值可以有多個關鍵字。使用SQL Management Studio,我可以手動運行查詢,如:C#多個關鍵字全文搜索自由文本參數化查詢

SELECT * FROM KnowledgeFAQ_Answers WHERE FREETEXT ((Title, [Text]), 'application deadlines') Order By Rank() Over (Order By Title) 

而且一切正常。在我查詢之後,我在我的網站上創建了我的數據訪問代碼,大部分情況下它都可以正常工作,但在某些情況下,我有不一致之處。似乎某些較小的單詞當出現在搜索字符串中時,只會返回一個空的datareader;但是,直接在SQL Management Studio中測試相同的短語會正確返回結果。因此,例如「招生截止日期」將起作用,並返回結果的讀者,但「有招生截止日期」突然返回任何內容,儘管手動運行查詢生成結果。某些單詞,由於沒有特殊原因,我可以看到,導致0結果,但也沒有產生SQL錯誤...只是返回空的datareader。看起來像sqlcommand對象以不破壞語法但不產生匹配的方式特意解析這些對象。有沒有人有一個關於通過sqlcommand對象的自由文本查詢中的多個關鍵字的工作示例和/或推理,爲什麼這不會工作?...在​​這裏完全損失。

+0

你嘗試檢查SQL事件探查器爲這實際上是從命令對象解僱查詢索引的

  • 或更新/重新索引停止列表? – 2011-01-11 23:09:29

  • 回答

    0

    錯誤是否一致?

    • 會不會是間諜您