mssql sqlserver INDEXPROPERTY 函数返回索引键的相关属性信息的方法分享


摘要:
下文讲述 INDEXPROPERTY 索引键的属性获取函数的分享
实验环境:sqlserver 2008



INDEXPROPERTY函数功能及语法说明

INDEXPROPERTY函数功能:
根据表或视图的标识编号、索引或统计信息的名称、属性名称返回相应的属性值
如果是XML索引,则返回null
———————————————-
INDEXPROPERTY语法简介:
INDEXPROPERTY(object_ID,index_or_statistics_name,property)
————————
参数说明:
object_ID
表或视图的对象ID编号
index_or_statistics_name:
索引或统计信息的名称
property:
属性名称,如下所示:

属性名

属性描述
IndexDepth

索引深度(索引级别数)
IndexFillFactor

填充因子
IndexID

索引ID
IsAutoStatistics

是否自动生成统计信息
IsClustered

是否聚集索引 1代表是 0代表不是 其它情况返回null
IsDisabled

索引是否被禁用
IsFulltextKey

是否全文索引
IsHypothetical

索引是否假设
IsPadIndex

索引节点是否保持空闲空间
IsPageLockDisallowed

是否允许页锁定
IsRowLockDisallowed

是否允许行锁定
IsStatistics

表修改是否创建统计信息
IsUnique

是否唯一索引
IsColumnstore

是否列存储索引

—————————-
INDEXPROPERTY返回值说明:
int

注意事项:
当运行错误时,返回null
当无权限访问某些索引列时,则返回null



INDEXPROPERTY函数举例说明


       SELECT   
    INDEXPROPERTY(OBJECT_ID('表名'),  
        '索引名称','IsClustered')AS [是否聚集],  
    INDEXPROPERTY(OBJECT_ID('表名'),  
        '索引名称','IndexDepth') AS [索引深度],  
    INDEXPROPERTY(OBJECT_ID('表名'),  
        '索引名称','IndexFillFactor') AS [填充因子];