CREATE FULLTEXT STOPLIST (Transact-SQL)
在目前資料庫中建立新的全文檢索停用字詞表。
在 SQL Server 2008 及更新的版本中,停用字詞在資料庫中是使用稱為「停用字詞表」(Stoplist) 的物件來管理。停用字詞表是停用字詞的清單,當它與全文檢索索引相關聯時,會套用至該索引上的全文檢索查詢。如需詳細資訊,請參閱<停止字詞和停止清單>。
重要事項 |
---|
只有在相容性層級 100 底下才支援 CREATE FULLTEXT STOPLIST、ALTER FULLTEXT STOPLIST 和 DROP FULLTEXT STOPLIST。在相容性層級 80 和 90 底下,則不支援這些陳述式。不過,在所有相容性層級底下,系統停用字詞表都會自動與新的全文檢索索引產生關聯。 |
語法
CREATE FULLTEXT STOPLIST stoplist_name
[ FROM { [ database_name. ] source_stoplist_name } | SYSTEM STOPLIST ]
[ AUTHORIZATION owner_name ]
;
引數
stoplist_name
這是停用字詞表的名稱。stoplist_name 最多可以有 128 個字元。stoplist_name 在目前資料庫的所有停用字詞表中必須是唯一的,而且必須符合識別碼的規則。在建立全文檢索索引時,將會使用 stoplist_name。
database_name
這是 source_stoplist_name 所指定之停用字詞表所在的資料庫名稱。如果未指定,database_name 便預設為目前的資料庫。source_stoplist_name
指定新的停用字詞表是藉由複製現有的停用字詞表所建立。如果 source_stoplist_name 不存在,或是資料庫使用者沒有正確的權限,CREATE FULLTEXT STOPLIST 會因為錯誤而發生失敗。如果來源停用字詞表中停用字詞內指定的任何語言未在目前資料庫中註冊,則 CREATE FULLTEXT STOPLIST 會成功,但是會傳回警告,而且不會加入對應的停用字詞。SYSTEM STOPLIST
指定新的停用字詞表是從預設存在於 Resource 資料庫中的停用字詞表所建立。AUTHORIZATION owner_name
指定擁有停用字詞表的資料庫主體名稱。owner_name 必須是目前使用者所屬的主體名稱,或者目前使用者必須具有 owner_name 的 IMPERSONATE 權限。若未指定,擁有權便歸目前使用者。
備註
停用字詞表的建立者就是它的擁有者。
權限
建立 STOPLIST 需要 CREATE FULLTEXT CATALOG 權限。停用字詞表擁有者可明確授與停用字詞表的 CONTROL 權限,好讓使用者可加入及移除字詞,以及卸除停用字詞表。
[!附註]
搭配全文檢索索引使用停用字詞表需要 REFERENCE 權限。
範例
A. 建立新的全文檢索停用字詞表
下列範例會建立名為 myStoplist 的新全文檢索停用字詞表。
CREATE FULLTEXT STOPLIST myStoplist;
GO
B. 從現有的全文檢索停用字詞表複製全文檢索停用字詞表
下列範例會藉由複製名為 Customers.otherStoplist 的現有 AdventureWorks 停用字詞表來建立名為 myStoplist2 的新全文檢索停用字詞表。
CREATE FULLTEXT STOPLIST myStoplist2 FROM AdventureWorks.otherStoplist;
GO
C. 從系統的全文檢索停用字詞表複製全文檢索停用字詞表
下列範例會藉由複製系統的停用字詞表來建立名為 myStoplist3 的新全文檢索停用字詞表。
CREATE FULLTEXT STOPLIST myStoplist3 FROM SYSTEM STOPLIST;
GO