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 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: