sp_indexes (Transact-SQL)

Se aplica a:SQL Server

Devuelve información de índice para la tabla remota especificada.

Convenciones de sintaxis de Transact-SQL

Sintaxis

  
sp_indexes [ @table_server = ] 'table_server'   
     [ , [ @table_name = ] 'table_name' ]   
     [ , [ @table_schema = ] 'table_schema' ]   
     [ , [ @table_catalog = ] 'table_db' ]   
     [ , [ @index_name = ] 'index_name' ]   
     [ , [ @is_unique = ] 'is_unique' ]  

Argumentos

[ @table_server= ] 'table_server'
Es el nombre de un servidor vinculado que ejecuta SQL Server para el que se solicita información de tabla. table_server es sysname, sin ningún valor predeterminado.

[ @table_name= ] 'table_name'
Es el nombre de la tabla remota para la que se proporciona información de índice. table_name es sysname, con un valor predeterminado de NULL. Si es NULL, se devuelven todas las tablas de la base de datos especificada.

[ @table_schema= ] 'table_schema'
Especifica el esquema de la tabla. En el entorno de SQL Server, esto corresponde al propietario de la tabla. table_schema es sysname, con un valor predeterminado de NULL.

[ @table_catalog= ] 'table_db'
Es el nombre de la base de datos en la que reside table_name . table_db es sysname, con un valor predeterminado de NULL. Si es NULL, table_db el valor predeterminado es master.

[ @index_name= ] 'index_name'
Es el nombre del índice para el que se solicita información. index es sysname, con un valor predeterminado de NULL.

[ @is_unique= ] 'is_unique'
Es el tipo de índice para el que se devuelve información. is_unique es bit, con un valor predeterminado de NULL y puede ser uno de los siguientes valores.

Valor Descripción
1 Devuelve información acerca de índices únicos.
0 Devuelve información acerca de índices que no son únicos.
NULL Devuelve información acerca de todos los índices.

Conjuntos de resultados

Nombre de la columna Tipo de datos Descripción
TABLE_CAT sysname Nombre de la base de datos en que reside la tabla especificada.
TABLE_SCHEM sysname Esquema de la tabla.
TABLE_NAME sysname Nombre de la tabla remota.
NON_UNIQUE smallint Indica si el índice es único o no:

0 = Único

1 = No único
INDEX_QUALIFER sysname Nombre del propietario del índice. Algunos productos DBMS permiten crear índices a usuarios que no sean los propietarios de la tabla. En SQL Server, esta columna siempre es la misma que TABLE_NAME.
INDEX_NAME sysname Nombre del índice.
TYPE smallint Tipo de índice:

0 = Estadísticas de una tabla

1 = Clúster

2 = Hash

3 = Otros
ORDINAL_POSITION int Posición ordinal de la columna en el índice. La primera columna del índice es 1. Esta columna siempre devuelve un valor.
COLUMN_NAME sysname Es el nombre correspondiente de la columna para cada columna de TABLE_NAME devuelta.
ASC_OR_DESC varchar Es el orden utilizado en la intercalación:

A = Ascendente

D = Descendente

NULL = No aplicable

SQL Server siempre devuelve A.
CARDINALITY int Es el número de filas de la tabla o valores únicos del índice.
PAGES int Número de páginas para el almacenamiento del índice o la tabla.
FILTER_CONDITION nvarchar(4000) SQL Server no devuelve un valor.

Permisos

Es necesario contar con un permiso de tipo SELECT sobre el esquema.

Ejemplos

En el ejemplo siguiente se devuelve toda la información de índices de la tabla Employees de la base de datos AdventureWorks2022, que se encuentra en el servidor vinculado Seattle1.

EXEC sp_indexes @table_server = 'Seattle1',   
   @table_name = 'Employee',   
   @table_schema = 'HumanResources',  
   @table_catalog = 'AdventureWorks2022';  

Consulte también

Procedimientos almacenados de consultas distribuidas (Transact-SQL)
sp_catalogs (Transact-SQL)
sp_column_privileges (Transact-SQL)
sp_foreignkeys (Transact-SQL)
sp_linkedservers (Transact-SQL)
sp_tables_ex (Transact-SQL)
sp_table_privileges (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)