INDEXPROPERTY (Transact-SQL)INDEXPROPERTY (Transact-SQL)

SE APLICA A: síSQL Server (a partir de 2008) síAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Devuelve el valor de propiedad del índice con nombre o las estadísticas de un número de identificación, nombre de índice o estadísticas y nombre de propiedad de una tabla especificada.Returns the named index or statistics property value of a specified table identification number, index or statistics name, and property name. Devuelve NULL para los índices XML.Returns NULL for XML indexes.

Icono de vínculo de tema Convenciones de sintaxis de Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxisSyntax

INDEXPROPERTY ( object_ID , index_or_statistics_name , property )   

ArgumentosArguments

object_IDobject_ID
Es una expresión que contiene el número de identificación de objeto de la tabla o de la vista indizada de la que se va a proporcionar información de propiedades del índice.Is an expression that contains the object identification number of the table or indexed view for which to provide index property information. object_ID es int.object_ID is int.

index_or_statistics_nameindex_or_statistics_name
Es una expresión que contiene el nombre del índice o las estadísticas para los cuales se va a devolver la información de la propiedad.Is an expression that contains the name of the index or statistics for which to return property information. index_or_statistics_name es nvarchar(128) .index_or_statistics_name is nvarchar(128).

propertyproperty
Es una expresión que contiene el nombre de la propiedad de base de datos que se va a devolver.Is an expression that contains the name of the database property to return. property es de tipo varchar(128) y puede tener uno de estos valores.property is varchar(128), and can be one of these values.

Nota

A menos que se especifique lo contrario, se devuelve NULL si property no es un nombre de propiedad válido, si object_ID no es un identificador de objeto válido, si object_ID es un tipo de objeto incompatible con la propiedad especificada o si el autor de la llamada no tiene permiso para ver los metadatos del objeto.Unless noted otherwise, NULL is returned when property is not a valid property name, object_ID is not a valid object ID, object_ID is an unsupported object type for the specified property, or the caller does not have permission to view the object's metadata.

PropiedadProperty DescripciónDescription ValorValue
IndexDepthIndexDepth Profundidad del índice.Depth of the index. Número de niveles del índice.Number of index levels.

NULL = El índice o la entrada XML no es válido.NULL = XML index or input is not valid.
IndexFillFactorIndexFillFactor Valor de factor de relleno utilizado al crear o volver a generar el índice por última vez.Fill factor value used when the index was created or last rebuilt. Factor de rellenoFill factor
IndexIDIndexID Id. del índice de una tabla o vista indizada especificada.Index ID of the index on a specified table or indexed view. Id. del índiceIndex ID
IsAutoStatisticsIsAutoStatistics Las estadísticas han sido generadas por la opción AUTO_CREATE_STATISTICS de ALTER DATABASE.Statistics were generated by the AUTO_CREATE_STATISTICS option of ALTER DATABASE. 1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.
IsClusteredIsClustered El índice está agrupado.Index is clustered. 1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.
IsDisabledIsDisabled El índice está deshabilitado.Index is disabled. 1 = True1 = True

0 = False0 = False

NULL = La entrada no es válida.NULL = Input is not valid.
IsFulltextKeyIsFulltextKey El índice es la clave de indización semántica y de texto completo de una tabla.Index is the full-text and semantic indexing key for a table. Se aplica a: desde SQL Server 2008SQL Server 2008 hasta SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.

NULL = La entrada no es válida.NULL = Input is not valid.
IsHypotheticalIsHypothetical El índice es hipotético y no se puede utilizar directamente como ruta de acceso a datos.Index is hypothetical and cannot be used directly as a data access path. Los índices hipotéticos contienen estadísticas de nivel de columna y son conservados y utilizados por el Asistente para la optimización de motor de base de datos.Hypothetical indexes hold column-level statistics and are maintained and used by Database Engine Tuning Advisor. 1 = True1 = True

0 = False o índice XML0 = False or XML index

NULL = La entrada no es válida.NULL = Input is not valid.
IsPadIndexIsPadIndex El índice especifica el espacio que debe dejarse abierto en cada nodo interior.Index specifies space to leave open on each interior node. Se aplica a: desde SQL Server 2008SQL Server 2008 hasta SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.
IsPageLockDisallowedIsPageLockDisallowed El valor de bloqueo de página establecido por la opción ALLOW_PAGE_LOCKS de ALTER INDEX.Page-locking value set by the ALLOW_PAGE_LOCKS option of ALTER INDEX. Se aplica a: desde SQL Server 2008SQL Server 2008 hasta SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

1 = No se permite el bloqueo de página.1 = Page locking is disallowed.

0 = Se permite el bloqueo de página.0 = Page locking is allowed.

NULL = La entrada no es válida.NULL = Input is not valid.
IsRowLockDisallowedIsRowLockDisallowed El valor de bloqueo de fila establecido por la opción ALLOW_ROW_LOCKS de ALTER INDEX.Row-locking value set by the ALLOW_ROW_LOCKS option of ALTER INDEX. Se aplica a: desde SQL Server 2008SQL Server 2008 hasta SQL Server 2017SQL Server 2017.Applies to: SQL Server 2008SQL Server 2008 through SQL Server 2017SQL Server 2017.

1 = No se permite el bloqueo de fila.1 = Row locking is disallowed.

0 = Se permite el bloqueo de fila.0 = Row locking is allowed.

NULL = La entrada no es válida.NULL = Input is not valid.
IsStatisticsIsStatistics index_or_statistics_name son estadísticas creadas por la instrucción CREATE STATISTICS o por la opción AUTO_CREATE_STATISTICS de ALTER DATABASE.index_or_statistics_name is statistics created by the CREATE STATISTICS statement or by the AUTO_CREATE_STATISTICS option of ALTER DATABASE. 1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.
IsUniqueIsUnique El índice es exclusivo.Index is unique. 1 = True1 = True

0 = Falso o índice XML.0 = False or XML index.
IsColumnstoreIsColumnstore El índice es un índice de almacén de columnas optimizado de memoria xVelocity.Index is an xVelocity memory optimized columnstore index. Se aplica a: desde SQL Server 2012 (11.x)SQL Server 2012 (11.x) hasta SQL Server 2017SQL Server 2017.Applies to: SQL Server 2012 (11.x)SQL Server 2012 (11.x) through SQL Server 2017SQL Server 2017.

1 = True1 = True

0 = False0 = False

Tipos devueltosReturn Types

intint

ExcepcionesExceptions

Devuelve NULL si se produce un error o si el autor de la llamada no tiene permiso para ver el objeto.Returns NULL on error or if a caller does not have permission to view the object.

Un usuario solo puede ver los metadatos de elementos protegibles que posea o para los que se le haya concedido permiso.A user can only view the metadata of securables that the user owns or on which the user has been granted permission. Esto significa que las funciones integradas de emisión de metadatos, como INDEXPROPERTY, pueden devolver NULL si el usuario no tiene ningún permiso para el objeto.This means that metadata-emitting, built-in functions such as INDEXPROPERTY may return NULL if the user does not have any permission on the object. Para obtener más información, consulte Metadata Visibility Configuration.For more information, see Metadata Visibility Configuration.

EjemplosExamples

En el ejemplo siguiente se devuelven los valores de las propiedades IsClustered, IndexDepth e IndexFillFactor del índice PK_Employee_BusinessEntityID de la tabla Employee en la base de datos AdventureWorks2012AdventureWorks2012.The following example returns the values for the IsClustered, IndexDepth, and IndexFillFactor properties for the PK_Employee_BusinessEntityID index of the Employee table in the AdventureWorks2012AdventureWorks2012 database.

SELECT   
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),  
        'PK_Employee_BusinessEntityID','IsClustered')AS [Is Clustered],  
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),  
        'PK_Employee_BusinessEntityID','IndexDepth') AS [Index Depth],  
    INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),  
        'PK_Employee_BusinessEntityID','IndexFillFactor') AS [Fill Factor];  
  

El conjunto de resultados es:Here is the result set:

Is Clustered Index Depth Fill Factor   
------------ ----------- -----------   
1            2           0  
  
(1 row(s) affected)  

Ejemplos: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse y Almacenamiento de datos paralelosParallel Data WarehouseExamples: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse and Almacenamiento de datos paralelosParallel Data Warehouse

En el siguiente ejemplo se examinan las propiedades de uno de los índices de la tabla FactResellerSales.The following example examines the properties of one of the indexes on the FactResellerSales table.

-- Uses AdventureWorks  
  
SELECT   
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'),  
    'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsClustered') AS [Is Clustered],  
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'),  
    'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IsColumnstore') AS [Is Columnstore Index],  
INDEXPROPERTY(OBJECT_ID('dbo.FactResellerSales'),  
    'ClusteredIndex_6d10fa223e5e4c1fbba087e29e16a7a2','IndexFillFactor') AS [Fill Factor];  
GO  

Consulte tambiénSee Also

CREATE INDEX (Transact-SQL) CREATE INDEX (Transact-SQL)
Utilizar las estadísticas para mejorar el rendimiento de las consultas Statistics
sys.indexes (Transact-SQL) sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL) sys.index_columns (Transact-SQL)
sys.stats (Transact-SQL) sys.stats (Transact-SQL)
sys.stats_columns (Transact-SQL)sys.stats_columns (Transact-SQL)