INDEXPROPERTY (Transact-SQL)
Actualizado: 17 de julio de 2006
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. Para los índices XML devuelve NULL.
Convenciones de sintaxis de Transact-SQL
Sintaxis
INDEXPROPERTY ( object_ID , index_or_statistics_name , property )
Argumentos
- object_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. object_ID es de tipo int.
- index_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. index_or_statistics_name es de tipo nvarchar(128).
property
Es una expresión que contiene el nombre de la propiedad de base de datos que se va a devolver. property es de tipo varchar(128) y puede ser uno de estos valores.[!NOTA] A menos que se especifique lo contrario, se devuelve NULL si property no es un nombre de propiedad válido, object_ID no es un Id. de objeto válido, object_ID es un tipo de objeto incompatible con la propiedad especificada o el autor de la llamada no tiene permiso para ver los metadatos del objeto.
Propiedad Descripción Valor IndexDepth
Profundidad del índice.
Número de niveles del índice.
NULL = El índice o la entrada XML no es válido.
IndexFillFactor
Valor de factor de relleno utilizado al crear o volver a generar el índice por última vez.
Factor de relleno
IndexID
Id. del índice de una tabla o vista indizada especificada.
Id. del índice
IsAutoStatistics
Las estadísticas han sido generadas por la opción AUTO_CREATE_STATISTICS de ALTER DATABASE.
1 = Verdadero
0 = Falso o índice XML.
IsClustered
El índice está agrupado.
1 = Verdadero
0 = Falso o índice XML.
IsDisabled
El índice está deshabilitado.
1 = Verdadero
0 = Falso
NULL = La entrada no es válida.
IsFulltextKey
El índice es la clave de texto de una tabla.
1 = Verdadero
0 = Falso o índice XML.
NULL = La entrada no es válida.
IsHypothetical
El índice es hipotético y no se puede utilizar directamente como ruta de acceso a datos. Los índices hipotéticos contienen estadísticas en el nivel de columna y son conservados y utilizados por el Asistente para la optimización de motor de base de datos.
1 = Verdadero
0 = Falso o índice XML.
NULL = La entrada no es válida.
IsPadIndex
El índice especifica el espacio que debe dejarse abierto en cada nodo interior.
1 = Verdadero
0 = Falso o índice XML.
IsPageLockDisallowed
El valor de bloqueo de página establecido por la opción ALLOW_PAGE_LOCKS de ALTER INDEX.
1 = No se permite el bloqueo de página.
0 = Se permite el bloqueo de página.
NULL = La entrada no es válida.
IsRowLockDisallowed
El valor de bloqueo de fila establecido por la opción ALLOW_ROW_LOCKS de ALTER INDEX.
1 = No se permite el bloqueo de fila.
0 = Se permite el bloqueo de fila.
NULL = La entrada no es válida.
IsStatistics
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.
1 = Verdadero
0 = Falso o índice XML.
IsUnique
El índice es exclusivo.
1 = Verdadero
0 = Falso o índice XML.
Tipos de valor devueltos
int
Excepciones
Devuelve NULL si se produce un error o si el autor de la llamada no tiene permiso para ver el objeto.
En SQL Server 2005, un usuario sólo puede ver los metadatos de asegurables que posea o para los que se le haya concedido permiso. 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. Para obtener más información, vea Configuración de visibilidad de los metadatos y Solucionar problemas de visibilidad de los metadatos.
Ejemplos
En el siguiente ejemplo se devuelven los valores de las propiedades IsClustered, IndexDepth e IndexFillFactor del índice PK
_Employee
_EmployeeID
de la tabla Employee
.
USE AdventureWorks;
GO
SELECT
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IsClustered')AS [Is Clustered],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IndexDepth') AS [Index Depth],
INDEXPROPERTY(OBJECT_ID('HumanResources.Employee'),
'PK_Employee_EmployeeID','IndexFillFactor') AS [Fill Factor];
GO
El siguiente es el conjunto de resultados:
Is Clustered Index Depth Fill Factor
------------ ----------- -----------
1 2 0
(1 row(s) affected)
Vea también
Referencia
CREATE INDEX (Transact-SQL)
sys.indexes (Transact-SQL)
sys.index_columns (Transact-SQL)
sys.stats (Transact-SQL)
sys.stats_columns (Transact-SQL)
Otros recursos
Estadísticas de índice
Solucionar problemas de visibilidad de los metadatos
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
17 de julio de 2006 |
|