CREATE SEARCH PROPERTY LIST (Transact-SQL)
Область применения: SQL Server
База данных SQL Azure Управляемый экземпляр SQL Azure
Создает новый список свойств поиска. В списке свойств поиска указывается одно или несколько свойств поиска, которые необходимо включить в полнотекстовый индекс.
Соглашения о синтаксисе Transact-SQL
Синтаксис
CREATE SEARCH PROPERTY LIST new_list_name
[ FROM [ database_name. ] source_list_name ]
[ AUTHORIZATION owner_name ]
;
Примечание.
Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.
Аргументы
new_list_name
Имя нового списка свойств поиска. Аргумент new_list_name — это идентификатор с максимальной длиной в 128 символов. Аргумент new_list_name должен быть уникальным в списках свойств текущей базы данных и соответствовать правилам для идентификаторов. Аргумент new_list_name будет использоваться при создании полнотекстового индекса.
database_name
Имя базы данных, в которой находится список свойств, указанный параметром source_list_name. Если не указано, в качестве database_name по умолчанию выбирается текущая база данных.
Параметр database_name должен указывать имя существующей базы данных. Имя входа для текущего соединения должно быть связано с идентификатором пользователя, существующим в базе данных, которая указана аргументом database_name. Кроме того, требуются необходимые разрешения для базы данных.
source_list_name
Указывает, что новый список свойств создается путем копирования существующего списка свойств из database_name. Если source_list_name не существует, то инструкция CREATE SEARCH PROPERTY LIST завершится ошибкой. Свойства поиска в source_list_name наследуются new_list_name.
AUTHORIZATION owner_name
Указывает имя пользователя или роли-владельца списка свойств. Аргумент owner_name должен быть именем роли, членом которой является текущий пользователь, или текущий пользователь должен иметь разрешение IMPERSONATE для owner_name. Если атрибут не указан, владельцем становится текущий пользователь.
Примечание.
Владельца можно изменить с помощью инструкции Transact-SQL ALTER AUTHORIZATION.
Замечания
Примечание.
Общие сведения о списках свойств см. в статье Поиск свойств документа с использованием списков свойств поиска.
По умолчанию новый список свойств, которые можно искать, пуст. В него необходимо вручную добавить одно или несколько свойств. В качестве альтернативы можно скопировать существующий список свойств поиска. В этом случае новый список наследует поисковые свойства своего источника, но его можно изменить, добавив или удалив определенные свойства. При следующем полном заполнении все свойства, приведенные в списке свойств поиска, заносятся в полнотекстовый индекс.
Инструкция CREATE SEARCH PROPERTY LIST завершится неуспехом при выполнении любого из следующих условий.
Если база данных, указанная параметром database_name, не существует.
Если список, указанный параметром source_list_name, не существует.
Если отсутствуют нужные разрешения.
Добавление и удаление свойств в списке
Удаление списка свойств
Разрешения
Необходимы разрешения CREATE FULLTEXT CATALOG в текущей базе данных и разрешение REFERENCES для любой базы данных, из которой копируется исходный список свойств.
Примечание.
Для связывания списка с полнотекстовым индексом требуется разрешение REFERENCES. Для добавления или удаления свойств, а также для удаления списка требуется разрешение CONTROL. Владелец списка свойств поиска может предоставить разрешения REFERENCES и CONTROL на список. Пользователи с разрешением CONTROL также могут предоставлять разрешение REFERENCES другим пользователям.
Примеры
А. Создание пустого списка свойств и связывание его с индексом
В следующем примере создается новый список свойств поиска с именем DocumentPropertyList
. Затем инструкция ALTER FULLTEXT INDEX связывает новый список свойств с полнотекстовым индексом таблицы Production.Document
из базы данных AdventureWorks
без запуска заполнения.
Примечание.
Пример, в котором в этот список свойств поиска добавляются несколько стандартных, известных свойств поиска, приведен в статье ALTER SEARCH PROPERTY LIST (Transact-SQL). После добавления свойств поиска в список администратору базы данных необходимо будет использовать другую инструкцию ALTER FULLTEXT INDEX с предложением START FULL POPULATION.
CREATE SEARCH PROPERTY LIST DocumentPropertyList;
GO
USE AdventureWorks2022;
ALTER FULLTEXT INDEX ON Production.Document
SET SEARCH PROPERTY LIST DocumentPropertyList
WITH NO POPULATION;
GO
B. Создание нового списка свойств на основе существующего
В следующем примере на основе списка, созданного в примере A (DocumentPropertyList
), создается новый список свойств поиска (JobCandidateProperties
), который будет связан с полнотекстовым индексом в базе данных AdventureWorks2022
. Затем инструкция ALTER FULLTEXT INDEX связывает новый список свойств с полнотекстовым индексом таблицы HumanResources.JobCandidate
из базы данных AdventureWorks2022
. Эта инструкция ALTER FULLTEXT INDEX начинает полное заполнение — поведением по умолчанию для предложения SET SEARCH PROPERTY LIST.
CREATE SEARCH PROPERTY LIST JobCandidateProperties
FROM AdventureWorks2022.DocumentPropertyList;
GO
ALTER FULLTEXT INDEX ON HumanResources.JobCandidate
SET SEARCH PROPERTY LIST JobCandidateProperties;
GO
См. также
ALTER SEARCH PROPERTY LIST (Transact-SQL)
DROP SEARCH PROPERTY LIST (Transact-SQL)
sys.registered_search_properties (Transact-SQL)
sys.registered_search_property_lists (Transact-SQL)
sys.dm_fts_index_keywords_by_property (Transact-SQL)
Поиск свойств документа с использованием списков свойств поиска
Поиск идентификаторов GUID для наборов свойств и целочисленных идентификаторов свойств для свойств поиска