sp_indexes (Transact-SQL)
適用於:SQL Server
傳回指定遠端資料表的索引資訊。
語法
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' ]
引數
[ @table_server= ] ' table_server '
這是執行 SQL Server 的連結伺服器名稱,其中要求資料表資訊。 table_server為 sysname ,沒有預設值。
[ @table_name= ] ' table_name '
這是要提供索引資訊的遠端資料表名稱。 table_name 為 sysname ,預設值為 Null。 如果為 Null,則會傳回指定資料庫中的所有資料表。
[ @table_schema= ] ' table_schema '
指定資料表架構。 在 SQL Server 環境中,這會對應至資料表擁有者。 table_schema 為 sysname ,預設值為 Null。
[ @table_catalog= ] ' table_db '
這是table_name 所在的資料庫 名稱。 table_db為 sysname ,預設值為 Null。 如果為 Null, table_db 預設為 master 。
[ @index_name= ] ' index_name '
這是要求資訊之索引的名稱。 index 是 sysname ,預設值為 Null。
[ @is_unique= ] ' is_unique '
這是要傳回信息的索引類型。 is_unique為 bit ,預設值為 Null,而且可以是下列其中一個值。
值 | 名稱 |
---|---|
1 | 傳回唯一索引的相關資訊。 |
0 | 傳回非唯一索引的相關資訊。 |
NULL | 傳回所有索引的相關資訊。 |
結果集
資料行名稱 | 資料類型 | 描述 |
---|---|---|
TABLE_CAT | sysname | 指定之資料表所在的資料庫名稱。 |
TABLE_SCHEM | sysname | 資料表的架構。 |
TABLE_NAME | sysname | 遠端資料表的名稱。 |
NON_UNIQUE | smallint | 索引是否是唯一的: 0 = 唯一 1 = 非唯一 |
INDEX_QUALIFER | sysname | 索引擁有者的名稱。 某些 DBMS 產品可讓資料表擁有者以外的使用者建立索引。 在 SQL Server 中,此資料行一律與 TABLE_NAME 相同。 |
INDEX_NAME | sysname | 索引的名稱。 |
TYPE | smallint | 索引的類型: 0 = 資料表的統計資料 1 = 叢集 2 = 雜湊 3 = 其他 |
ORDINAL_POSITION | int | 資料行在索引中的序數位置。 索引中的第一個資料行是 1。 這個資料行一律會傳回值。 |
COLUMN_NAME | sysname | 這是傳回TABLE_NAME之每個資料行的資料行對應名稱。 |
ASC_OR_DESC | varchar | 這是定序中使用的順序: A = 遞增 D = 遞減 Null = 不適用 SQL Server 一律會傳回 A。 |
CARDINALITY | int | 這是資料表中的資料列數目,或索引中的唯一值。 |
PAGES | int | 這是要儲存索引或資料表的頁數。 |
FILTER_CONDITION | Nvarchar( 4000 ) | SQL Server 不會傳回值。 |
權限
需要架構的 SELECT 許可權。
範例
下列範例會從 Employees
連結伺服器上的資料庫 Seattle1
資料表 AdventureWorks2022
傳回所有索引資訊。
EXEC sp_indexes @table_server = 'Seattle1',
@table_name = 'Employee',
@table_schema = 'HumanResources',
@table_catalog = 'AdventureWorks2022';
另請參閱
分散式查詢預存程式 (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)
系統預存程序 (Transact-SQL)
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: