全文檢索搜尋的行為變更

本主題描述全文檢索搜尋的行為變更。 行為變更會影響 SQL Server 2012 功能的運作或互動方式 (相較於舊版的 SQL Server)。

SQL Server 2012 全文檢索搜尋的行為變更

SQL Server 2012 會安裝美式英文 (LCID 1033) 和英式英文 (LCID 2057) 的新版斷詞工具和字幹分析器。 不過,如果您要保留舊版的行為,可以切換到這些元件的舊版。 如需詳細資訊,請參閱<變更用於美式英文與英式英文的斷詞工具>。

已安裝新的斷詞工具和字幹分析器

SQL Server 2012 更新全文檢索搜尋和語意搜尋使用的所有斷詞工具和字幹分析器。 建議您重新擴展現有的全文檢索索引,以取得索引內容和查詢結果的一致性。

  1. 目前有英文的新斷詞工具。 如果您必須保留舊版的行為,請參閱<變更用於美式英文與英式英文的斷詞工具>。

  2. 舊版 SQL Server 隨附之丹麥文、波蘭文及土耳其文的協力廠商斷詞工具已取代為 Microsoft 元件。 預設會啟用新元件。

  3. 目前有捷克文和希臘文的新斷詞工具。 舊版 SQL Server 全文檢索搜尋不支援這兩種語言。

新斷詞工具和字幹分析器的行為變更

當您擴展及查詢全文檢索索引時,新元件可能會傳回與舊元件不同的結果。 下表示範英文結果中一些可預期的差異。

如果您必須保留舊版斷詞工具和字幹分析器的行為,請參閱以下主題:

在某些情況下,新元件會傳回更多結果:

詞彙

舊版斷詞工具和字幹分析器的結果

新版斷詞工具和字幹分析器的結果

cat-dog

cat

dog

cat

cat-dog

dog

cat@dog.com

cat

com

dog

cat

cat@dog.com

com

dog

12/11/2011

(其中詞彙是日期)

12/11/2011

dd20111211

11

12

12/11/2011

2011

dd20111211

在某些情況下,新元件會傳回類似的結果:

詞彙

舊版斷詞工具和字幹分析器的結果

新版斷詞工具和字幹分析器的結果

100$

100$

nn100$

100$

nn100usd

022

022

nn022

022

nn22

10:49AM

(其中詞彙是時間)

10:49am

tt1049

10:49am

tt24104900

在某些情況下,新元件會傳回較少結果或應用程式可能未預期的結果:

詞彙

舊版斷詞工具和字幹分析器的結果

新版斷詞工具和字幹分析器的結果

jěˊÿqℭžl

(其中詞彙不是有效的英文字元)

'jěˊÿqℭžl'

je yq zl

table's

table's

table

table's

cat-

cat

cat-

cat

v-z(其中 v 和 z 是非搜尋字)

(無結果)

v-z

$100 000 USD

$100

000

nn000

nn100$

usd

$100 000 usd

nn100000usd

beautiful U.S land

beautiful

land

u.s

us

beautiful

land

Mt. Kent and Mt Challenger

challenger

kent

mt

mt.

mt

kent

challenger

SQL Server 2008 中全文檢索搜尋的行為變更

在 SQL Server 2008 和更新的版本中,全文檢索引擎是以資料庫服務的形式整合至關聯式資料庫中,成為伺服器查詢和儲存引擎基礎結構的一部分。 新的全文檢索搜尋架構可達成下列目標:

  • 整合式儲存和管理—全文檢索搜尋現在直接與 SQL Server 的原有儲存和管理功能整合,而且 MSFTESQL 服務不再存在。 

    • 全文檢索索引會儲存在資料庫檔案群組內部,而非儲存在檔案系統中。 資料庫的管理作業 (例如建立備份) 會自動影響其全文檢索索引。

    • 全文檢索目錄現在是不屬於任何檔案群組的虛擬物件。它是參考一組全文檢索索引的邏輯概念。 因此,許多目錄管理功能都已經被取代,而且這項取代已經針對某些功能建立重大變更。 如需詳細資訊,請參閱<SQL Server 2012 中已被取代的 Database Engine 功能>和<對全文檢索搜尋的重大變更>。

      [!附註]

      指定全文檢索目錄正常運作的 SQL Server 2005 Transact-SQL DDL 陳述式。

  • 整合式查詢處理—新的全文檢索搜尋查詢處理器屬於 Database Engine 的一部分,而且與 SQL Server 查詢處理器完全整合。 這表示,查詢最佳化工具會辨識全文檢索查詢述詞並且盡可能有效率地自動執行它們。

  • 強化的管理和疑難排解—整合式全文檢索搜尋會提供一些工具,可協助您分析搜尋結構,例如全文檢索索引、給定斷詞工具的輸出和停用字詞組態。

  • 停用字詞和停用字詞表已經取代了非搜尋字和非搜尋字檔案。 停用字詞表是一個資料庫物件,可加快停用字詞管理工作的速度並且改善不同伺服器執行個體與環境之間的完整性。 如需詳細資訊,請參閱<設定及管理全文檢索搜尋的停用字詞與停用字詞表>。

  • SQL Server 2008 和更新的版本包含 SQL Server 2005 中許多語言的新斷詞工具。 只有英文、韓文、泰文和中文 (所有形式) 的斷詞工具維持原狀。 至於其他語言,如果全文檢索目錄是在 SQL Server 2005 資料庫升級為 SQL Server 2008 或更新版本時匯入,則該全文檢索目錄中全文檢索索引所使用的一個或多個語言現在可能會與新的斷詞工具相關聯,而這些斷詞工具的行為可能與已匯入之斷詞工具的行為稍微不同。 如需有關如何確保查詢與全文檢索索引內容之間一致性的詳細資訊,請參閱<從 SQL Server 2005 更新全文檢索搜尋>。

  • 加入了新的 FDHOST Launcher (MSSQLFDLauncher) 服務。 如需詳細資訊,請參閱<全文檢索搜尋使用者入門>。

  • 全文檢索索引處理 FILESTREAM 資料行的方式,與處理 varbinary(max) 資料行的方式相同。 FILESTREAM 資料表必須有一個資料行包含每一個 FILESTREAM BLOB 的副檔名。 如需詳細資訊,請參閱<使用全文檢索搜尋進行查詢>、<設定及管理搜尋的篩選>和<sys.fulltext_document_types (Transact-SQL)>。

    全文檢索引擎會針對 FILESTREAM BLOB 的內容建立索引。 為檔案 (如影像) 建立索引可能不會很實用。 當更新 FILESTREAM BLOB 時,會為它重新建立索引。

請參閱

概念

全文檢索搜尋 (SQL Server)

從 SQL Server 2005 更新全文檢索搜尋

全文檢索搜尋使用者入門

其他資源

全文檢索搜尋的回溯相容性