zoukankan      html  css  js  c++  java
  • SQL查询表中的有那些索引

    方法1. 使用系统表

     
    -- 查询一个表中的索引及索引列
    USE AdventureWorks2008
    GO
    SELECT  indexname = a.name , tablename = c. name , indexcolumns = d .name , a .indid
    FROM    sysindexes a JOIN sysindexkeys b ON a .id = b .id  AND a .indid = b.indid
            JOIN sysobjects c ON b .id = c .id
            JOIN syscolumns d ON b .id = d .id  AND b .colid = d .colid
    WHERE   a .indid NOT IN ( 0 , 255 )  
    -- and   c.xtype='U'   and   c.status>0 -- 查所有用户表
    AND c .name = 'DatabaseLog' --查指定表
    ORDER BY c. name ,
            a.name ,
            d.name
     

    方法2. 使用系统存储过程

    sp_helpindex :报告有关表或视图上索引的信息。

     
    /*  sp_helpindex [ @objname = ] 'name'
    参数 :[@objname =] 'name'
    是当前数据库中表或视图的名称。name 的数据类型为 nvarchar(776),没有默认值。 */
    
    use DB_NAME
    go
    
    sp_helpindex 'Tablename'
     

    返回代码值 0(成功)或 1(失败) 结果集:

    列名

    数据类型

    描述

    index_name

    sysname

    索引名。

    index_description

    varchar(210)

    索引描述。

    index_keys

    nvarchar(2078)

    表或视图列,在这些列上构造索引。

    被降序索引的列将在结果集中列出,该列的名称后面带有一个减号 (-),当列出被升序索引的列(这是默认情况)时,只带有该列的名称。 注释 如果已经用 UPDATE STATISTICS 的 NORECOMPUTE 选项设置了索引,那么在 sp_helpindex 的结果集中会显示这个信息。

  • 相关阅读:
    align 的用法
    layui 验证用法
    C# Post请求方法
    SQL 查询今天、昨天、7天内、30天的数据
    对Dijkstra名字发音的看法
    Ubuntu桌面图标消失且右键失效的解决办法
    Ubuntu下安装与配置Matlab
    ns 简单网络模拟
    JAVA包含第三方包的部署方法
    Ubuntu下配置ftp服务端
  • 原文地址:https://www.cnblogs.com/eric-qin/p/5198674.html
Copyright © 2011-2022 走看看