教您如何查詢SQL索引及主鍵信息
作者:佚名 
  SQL索引是SQL數(shù)據(jù)庫中最重要部分之一,下文對如何查詢SQL索引及主鍵信息進(jìn)行了詳細(xì)的闡述說明,供您參考學(xué)習(xí)。
 SQL索引及主鍵等信息如何查詢是我們都需要知道的知識,下面就教您查詢SQL索引及主鍵信息的方法,希望對您有所啟迪。
- SELECT
 - TableId=O.[object_id],
 - TableName=O.Name,
 - IndexId=ISNULL(KC.[object_id],IDX.index_id),
 - IndexName=IDX.Name,
 - IndexType=ISNULL(KC.type_desc,'Index'),
 - Index_Column_id=IDXC.index_column_id,
 - CColumnID=C.Column_id,
 - CColumnName=C.Name,
 - Sort=CASE INDEXKEY_PROPERTY(IDXC.[object_id],IDXC.index_id,IDXC.index_column_id,'IsDescending')
 - WHEN 1 THEN 'DESC' WHEN 0 THEN 'ASC' ELSE '' END,
 - PrimaryKey=CASE WHEN IDX.is_primary_key=1 THEN N'√'ELSE N'' END,
 - [UQIQUE]=CASE WHEN IDX.is_unique=1 THEN N'√'ELSE N'' END,
 - Ignore_dup_key=CASE WHEN IDX.ignore_dup_key=1 THEN N'√'ELSE N'' END,
 - Disabled=CASE WHEN IDX.is_disabled=1 THEN N'√'ELSE N'' END,
 - Fill_factor=IDX.fill_factor,
 - Padded=CASE WHEN IDX.is_padded=1 THEN N'√'ELSE N'' END
 - FROM sys.indexes IDX
 - INNER JOIN sys.index_columns IDXC
 - ON IDX.[object_id]=IDXC.[object_id]
 - AND IDX.index_id=IDXC.index_id
 - LEFT JOIN sys.key_constraints KC
 - ON IDX.[object_id]=KC.[parent_object_id]
 - AND IDX.index_id=KC.unique_index_id
 - INNER JOIN sys.objects O
 - ON O.[object_id]=IDX.[object_id]
 - INNER JOIN sys.columns C
 - ON O.[object_id]=C.[object_id]
 - AND O.type='U'
 - AND O.is_ms_shipped=0
 - AND IDXC.Column_id=C.Column_id
 - -- INNER JOIN -- 對于一個列包含多個索引的情況,只顯示第1個索引信息
 - -- (
 - -- SELECT [object_id], Column_id, index_id=MIN(index_id)
 - -- FROM sys.index_columns
 - -- GROUP BY [object_id], Column_id
 - -- ) IDXCUQ
 - -- ON IDXC.[object_id]=IDXCUQ.[object_id]
 - -- AND IDXC.Column_id=IDXCUQ.Column_id
 
以上就是如何查詢SQL索引及主鍵信息的方法。
【編輯推薦】
責(zé)任編輯:段燃 
                    來源:
                    互聯(lián)網(wǎng)
 














 
 
 
 
 
 
 