CREATE FULLTEXT CATALOG (Transact-SQL)

建立資料庫的全文檢索目錄。單一全文檢索目錄可以有多個全文檢索索引,但一個全文檢索索引只能屬於單一全文檢索目錄。每個資料庫都可以有零或多個全文檢索目錄。

您不能在 mastermodeltempdb 資料庫中建立全文檢索目錄。

重要注意事項重要事項

從 SQL Server 2008 開始,全文檢索目錄是虛擬物件,而且不屬於任何檔案群組。全文檢索目錄是參考一組全文檢索索引的邏輯概念。

主題連結圖示Transact-SQL 語法慣例

語法

CREATE FULLTEXT CATALOG catalog_name
     [ON FILEGROUP filegroup ]
     [IN PATH 'rootpath']
     [WITH <catalog_option>]
     [AS DEFAULT]
     [AUTHORIZATION owner_name ]

<catalog_option>::=
     ACCENT_SENSITIVITY = {ON|OFF}

引數

  • catalog_name
    這是新目錄的名稱。在目前資料庫的所有目錄名稱之間,目錄名稱必須是唯一的。另外,在資料庫的所有檔案之間,對應於全文檢索目錄的檔案名稱 (請參閱 ON FILEGROUP) 也必須是唯一的。如果資料庫中已有另一個目錄在使用這個目錄名稱,SQL Server 會傳回錯誤。

    目錄名稱的長度不能超出 120 個字元。

  • ON FILEGROUP filegroup
    從 SQL Server 2008 開始,這個子句不會有任何作用。

  • IN PATH 'rootpath'

    [!附註]

    未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

    從 SQL Server 2008 開始,這個子句不會有任何作用。

  • ACCENT_SENSITIVITY = {ON|OFF}
    指定全文檢索索引的目錄是否區分腔調字。當這個屬性有了改變時,您必須重建索引。預設值是使用資料庫定序所指定的區分腔調字屬性。若要顯示資料庫定序,請使用 sys.databases 目錄檢視。

    若要判斷全文檢索目錄目前的區分腔調字屬性設定,請針對 catalog_name,搭配 accentsensitivity 屬性值來使用 FULLTEXTCATALOGPROPERTY 函數。如果傳回的值是 '1',全文檢索目錄就會區分腔調字;如果傳回的值是 '0',目錄就不會區分腔調字。

  • AS DEFAULT
    指定這個全文檢索目錄是預設目錄。當建立全文檢索索引,卻沒有明確指定全文檢索目錄時,便使用預設目錄。如果現有的全文檢索目錄已標示了 AS DEFAULT,將這個新目錄設成 AS DEFAULT,會使這個目錄成為預設的全文檢索目錄。

  • AUTHORIZATION owner_name
    將全文檢索目錄的擁有者設為資料庫使用者或角色的名稱。如果 owner_name 是某個角色,則這個角色必須是目前使用者所屬成員的角色名稱,否則,執行陳述式的使用者必須是資料庫擁有者或系統管理員。

    如果 owner_name 是某個使用者名稱,這個使用者名稱必須是下列其中一項:

    • 執行陳述式的使用者名稱。

    • 執行命令的使用者有其模擬權限的使用者名稱。

    • 或者,執行命令的使用者必須是資料庫擁有者或系統管理員。

    owner_name 也必須取得指定之全文檢索目錄的 TAKE OWNERSHIP 權限。

備註

全文檢索目錄識別碼從 00005 開始,每次新增一個目錄時識別碼便增加一號。

權限

使用者必須具有資料庫的 CREATE FULLTEXT CATALOG 權限,或者是 db_ownerdb_ddladmin 固定資料庫角色的成員。

範例

下列範例會建立全文檢索目錄和全文檢索索引。

USE AdventureWorks;
GO
CREATE FULLTEXT CATALOG ftCatalog AS DEFAULT;
GO
CREATE FULLTEXT INDEX ON HumanResources.JobCandidate(Resume) KEY INDEX PK_JobCandidate_JobCandidateID;
GO