Delen via


sp_indexes (Transact-SQL)

Van toepassing op:SQL Server

Geeft indexinformatie terug voor de opgegeven externe tabel.

Transact-SQL syntaxis-conventies

Syntaxis

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

Arguments

[ @table_server = ] N'table_server'

De naam van een gekoppelde server die SQL Server draait waarvoor tabelinformatie wordt opgevraagd. @table_server is een systeemnaam, zonder standaard.

[ @table_name = ] N'table_name'

De naam van de externe tabel waarvoor indexinformatie moet worden verstrekt. @table_name is een systeemnaam, met als standaard .NULL Als NULL, worden alle tabellen in de opgegeven database teruggegeven.

[ @table_schema = ] N'table_schema'

Specificeert het tabelschema. @table_schema is sysname, met als standaard .NULL In de SQL Server-omgeving komt deze waarde overeen met de tabeleigenaar.

[ @table_catalog = ] N'table_catalog'

De naam van de database waarin @table_name zich bevindt. @table_catalog is sysname, met als standaard .NULL Als NULL, @table_catalog standaard naar master.

[ @index_name = ] N'index_name'

De naam van de index waarvoor informatie wordt opgevraagd. @index_name is sysname, met als standaard .NULL

[ @is_unique = ] is_unique

Het type index waarvoor informatie wordt teruggegeven. @is_unique is bit, en kan een van de volgende waarden zijn.

Waarde Description
1 Geeft informatie over unieke indexen terug.
0 Geeft informatie over indexen die niet uniek zijn.
NULL (standaard) Geeft informatie over alle indexen terug.

Resultaatset

Kolomnaam Gegevenstype Description
TABLE_CAT sysname Naam van de database waarin de opgegeven tabel zich bevindt.
TABLE_SCHEM sysname Schema voor de tabel.
TABLE_NAME sysname Naam van de externe tafel.
NON_UNIQUE smallint Of de index uniek is of niet:

0 = Uniek
1 = Niet uniek
INDEX_QUALIFER sysname Naam van de index-eigenaar. Sommige databasebeheersystemen (DBMS) maken het mogelijk voor andere gebruikers dan de tabeleigenaar om indexen te maken. In SQL Server is deze kolom altijd hetzelfde als TABLE_NAME.
INDEX_NAME sysname Naam van de index.
TYPE smallint Type index:

0 = Statistieken voor een tabel
1 = Geclusterd
2 = Hashed
3 = Overig
ORDINAL_POSITION int Ordinaalpositie van de kolom in de index. De eerste kolom in de index is 1. Deze kolom geeft altijd een waarde terug.
COLUMN_NAME sysname De overeenkomstige naam van de kolom voor elke kolom van de teruggestuurde kolom TABLE_NAME .
ASC_OR_DESC varchar De volgorde die bij de sortering wordt gebruikt:

A = Opstijgend
D = Dalend
NULL = Niet van toepassing

SQL Server geeft altijd .A
CARDINALITY int Het aantal rijen in de tabel of unieke waarden in de index.
PAGES int Het aantal pagina's om de index of tabel op te slaan.
FILTER_CONDITION nvarchar(4000) SQL Server geeft geen waarde terug.

Permissions

Vereist SELECT toestemming voor het schema.

Voorbeelden

Het volgende voorbeeld geeft alle indexinformatie terug uit de Employees tabel van de AdventureWorks2025 database op de gekoppelde Seattle1 server.

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