Partage via


CREATE SEARCH PROPERTY LIST (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance

Crée une liste de propriétés de recherche. Une liste de propriétés de recherche permet de spécifier une ou plusieurs propriétés de recherche que vous souhaitez inclure dans un index de recherche en texte intégral.

Conventions de la syntaxe Transact-SQL

Syntaxe

CREATE SEARCH PROPERTY LIST new_list_name  
   [ FROM [ database_name. ] source_list_name ]  
   [ AUTHORIZATION owner_name ]  
;  

Arguments

new_list_name
Nom de la nouvelle liste des propriétés de recherche. new_list_name est un identificateur avec un maximum de 128 caractères. new_list_name doit être unique parmi toutes les listes de propriétés dans la base de données active et respecter les règles applicables aux identificateurs. new_list_name est utilisé une fois que l’index de recherche en texte intégral est créé.

database_name
Nom de la base de données dans laquelle se trouve la liste de propriétés spécifiée par source_list_name. Si aucun nom n’est spécifié, database_name correspond par défaut à la base de données actuelle.

database_name doit spécifier le nom d’une base de données existante. Le compte de la connexion actuelle doit être associé à un ID d’utilisateur existant de la base de données spécifiée par database_name. Vous devez également disposer des autorisations exigées sur la base de données.

source_list_name
Spécifie que la nouvelle liste de propriétés est créée en copiant une liste de propriétés existante à partir de database_name. Si source_list_name n’existe pas, CREATE SEARCH PROPERTY LIST échoue avec une erreur. Les propriétés de recherche dans source_list_name sont héritées par new_list_name.

AUTHORIZATION owner_name
Spécifie le nom d'un utilisateur ou d'un rôle pour détenir la liste de propriétés. owner_name doit être le nom d’un rôle dont l’utilisateur actuel est membre, ou l’utilisateur actuel doit disposer de l’autorisation IMPERSONATE sur owner_name. En l'absence de spécification, la propriété revient à l'utilisateur actuel.

Notes

Il est possible de changer le propriétaire à l’aide de l’instruction ALTER AUTHORIZATIONTransact-SQL.

Remarques

Notes

Pour obtenir des informations générales sur les listes de propriétés, consultez Rechercher les propriétés du document à l’aide des listes de propriétés de recherche.

Par défaut, une nouvelle liste des propriétés de recherche est vide et vous devez la modifier pour ajouter une ou plusieurs propriétés de recherche manuellement. Vous pouvez également copier une liste de propriétés de recherche existante. Dans ce cas, la nouvelle liste hérite des propriétés de recherche de sa source, mais vous pouvez modifier la nouvelle liste pour ajouter ou supprimer des propriétés de recherche. Toutes les propriétés figurant dans la liste des propriétés de recherche au moment du remplissage complet suivant sont incluses dans l'index de recherche en texte intégral.

Une instruction CREATE SEARCH PROPERTY LIST échoue si l'une des conditions suivantes se présente :

  • Si la base de données spécifiée par database_name n’existe pas.

  • Si la liste spécifiée par source_list_name n’existe pas.

  • Si vous ne possédez pas les autorisations appropriées.

Pour ajouter ou supprimer des propriétés dans une liste

Autorisations

Requiert des autorisations CREATE FULLTEXT CATALOG dans la base de données actuelle et des autorisations REFERENCES sur toute base de données depuis laquelle vous copiez une liste de propriétés source.

Notes

L'autorisation REFERENCES est obligatoire pour associer la liste à un index de recherche en texte intégral. L'autorisation CONTROL est obligatoire pour ajouter et supprimer des propriétés ou supprimer la liste. Le propriétaire d'une liste de propriétés peut accorder des autorisations REFERENCES ou CONTROL sur la liste. Les utilisateurs disposant de l'autorisation CONTROL peuvent également accorder l'autorisation REFERENCES à d'autres utilisateurs.

Exemples

R. Création d'une liste de propriétés vide et association à un index

L'exemple suivant crée une nouvelle liste de propriétés de recherche nommée DocumentPropertyList. L’exemple utilise ensuite une instruction ALTER FULLTEXT INDEX pour associer la nouvelle liste de propriétés à l’index de recherche en texte intégral de la table Production.Document dans la base de données AdventureWorks, sans démarrer un remplissage.

Notes

Pour obtenir un exemple qui ajoute plusieurs propriétés de recherche prédéfinies bien connues à cette liste de propriétés de recherche, consultez ALTER SEARCH PROPERTY LIST (Transact-SQL). Après avoir ajouté des propriétés de recherche à la liste, l'administrateur de base de données devra utiliser une autre instruction ALTER FULLTEXT INDEX avec la clause 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. Création d'une liste de propriétés à partir d'une liste existante

L'exemple suivant crée une nouvelle liste de propriétés de recherche, JobCandidateProperties, à partir de la liste créée par l'exemple A, DocumentPropertyList, associée à un index de recherche en texte intégral dans la base de données AdventureWorks2022. L'exemple utilise ensuite une instruction ALTER FULLTEXT INDEX pour associer la nouvelle liste de propriétés à l'index de recherche en texte intégral de la table HumanResources.JobCandidate dans la base de données AdventureWorks2022. Cette instruction ALTER FULLTEXT INDEX entraîne un remplissage complet, ce qui correspond au comportement par défaut de la clause 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

Voir aussi

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)
Rechercher les propriétés du document à l’aide des listes des propriétés de recherche
Recherche des GUID du jeu de propriétés et des ID d'entier de propriétés pour les propriétés de recherche