CREATE SEARCH PROPERTY LIST (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Crea una nueva lista de propiedades de búsqueda. Una lista de propiedades de búsqueda se utiliza para especificar una o más propiedades de búsqueda que desea incluir en un índice de texto completo.

Convenciones de sintaxis de Transact-SQL

Sintaxis

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

Nota:

Para ver la sintaxis de Transact-SQL para SQL Server 2014 (12.x) y versiones anteriores, consulte Versiones anteriores de la documentación.

Argumentos

new_list_name
Es el nombre de la nueva lista de propiedades de búsqueda. new_list_name es un identificador con un máximo de 128 caracteres. new_list_name debe ser único entre todas las listas de propiedades de la base de datos actual y cumplir las reglas de los identificadores. new_list_name se usará cuando se cree el índice de texto completo.

database_name
Es el nombre de la base de datos donde se encuentra la lista de propiedades especificada por source_list_name. Si no se especifica, database_name usa de manera predeterminada la base de datos actual.

database_name debe especificar el nombre de una base de datos existente. El inicio de sesión de la conexión actual debe estar asociado a un identificador de usuario existente en la base de datos especificada por database_name. También debe tener los permisos necesarios en la base de datos.

source_list_name
Especifica que la nueva lista de propiedades se crea copiando una lista de propiedades existente desde database_name. Si source_list_name no existe, CREATE SEARCH PROPERTY LIST produce un error. new_list_name hereda las propiedades de búsqueda de source_list_name.

AUTHORIZATION owner_name
Especifica el nombre de un usuario o rol que posea la lista de propiedades. owner_name debe ser el nombre de un rol del que el usuario actual sea miembro, o bien el usuario actual debe tener el permiso IMPERSONATE sobre owner_name. Si no se especifica, la propiedad se otorga al usuario actual.

Nota

El propietario se puede cambiar usando la instrucción Transact-SQLALTER AUTHORIZATION.

Comentarios

Nota

Para más información sobre las listas de propiedades en general, vea Buscar propiedades de documento con listas de propiedades de búsqueda.

De forma predeterminada, una nueva lista de propiedades de búsqueda está vacía y debe modificarla para agregar manualmente una o más propiedades de búsqueda. Opcionalmente, puede copiar una lista de propiedades de búsqueda existente. En este caso, la nueva lista hereda las propiedades de búsqueda de su origen, pero se puede modificar para agregar o quitar propiedades. Cualquier propiedad de la lista de propiedades de búsqueda en el momento del siguiente rellenado completo se incluye en el índice de texto completo.

Una instrucción CREATE SEARCH PROPERTY LIST da error en cualquiera de las condiciones siguientes:

  • Si la base de datos que especifica database_name no existe.

  • Si la lista que especifica source_list_name no existe.

  • Si no tiene los permisos correctos.

Para agregar o quitar las propiedades de una lista

Permisos

Requiere los permisos CREATE FULLTEXT CATALOG en la base de datos actual y los permisos REERENCES en cualquier base de datos de la que copie una lista de propiedades de origen.

Nota

El permiso REFERENCES se necesita para asociar la lista a un índice de texto completo. El permiso CONTROL se exige para agregar y quitar propiedades o quitar la lista. El propietario de la lista de propiedades puede conceder los permisos REFERENCE o CONTROL en la lista. Los usuarios con el permiso CONTROL también pueden conceder el permiso REFERENCES a otros usuarios.

Ejemplos

A. Crear una lista de propiedades vacía y asociarla a un índice

El siguiente ejemplo crea una nueva lista de propiedades de búsqueda denominada DocumentPropertyList. Luego, en el ejemplo se usa una instrucción ALTER FULLTEXT INDEX para asociar la nueva lista de propiedades al índice de texto completo de la tabla Production.Document en la base de datos AdventureWorks, sin iniciar un rellenado.

Nota

Para obtener un ejemplo en el que se agregan varias propiedades de búsqueda predefinidas conocidas a esta lista de propiedades de búsqueda, vea ALTER SEARCH PROPERTY LIST (Transact-SQL). Después de agregar las propiedades de búsqueda a la lista, el administrador de bases de datos necesitaría utilizar otra instrucción ALTER FULLTEXT INDEX con la cláusula 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. Crear una lista de propiedades desde otra existente

El siguiente ejemplo crea una nueva lista de propiedades de búsqueda, JobCandidateProperties, a partir de la lista creada en el ejemplo A, DocumentPropertyList, que se asocia a un índice de texto completo en la base de datos AdventureWorks2022. A continuación, el ejemplo utiliza una instrucción ALTER FULLTEXT INDEX para asociar la nueva lista de propiedades al índice de texto completo de la tabla HumanResources.JobCandidate en la base de datos AdventureWorks2022. Esta instrucción ALTER FULLTEXT INDEX inicia un rellenado completo, que es el comportamiento predeterminado de la cláusula 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

Vea también

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)
Buscar propiedades de documento con listas de propiedades de búsqueda
Buscar GUID del conjunto de propiedades e identificadores de enteros de propiedad para las propiedades de búsqueda