Posts
265
Comments
80
Trackbacks
4
Select um die Indices einer Datenbank auszulesen

Für mein Arhiv hier ein Select zum auslesen der Indices einer Datenbank (Quelle: http://www.insidesql.de/content/view/136/):

SELECT
    CAST(SO.[name] AS CHAR(20)) AS TableName
    , CAST(SI.[name] AS CHAR(30)) AS IndexName
    , CAST(SC.[name] AS CHAR(15)) AS ColName
    , CAST(ST.[name] AS CHAR(10)) AS TypeVal
    , CASE
        WHEN (SI.status & 16)<>0 THEN 'Yes' ELSE 'No'
    END AS ClusteredIndex
FROM
    SYSOBJECTS SO
INNER JOIN
    SYSINDEXES SI
    INNER JOIN
        SYSINDEXKEYS SIK
    ON
        SIK.[id] = SI.[id]
    AND
        SIK.indid = SI.indid
        INNER JOIN
            SYSCOLUMNS SC
            INNER JOIN
                SYSTYPES ST
ON
                SC.xtype = ST.xtype
     ON
                SIK.[id] = SC.[id]
            AND
                SIK.colid = SC.colid
            ON
                SO.[id] = SI.[id]
WHERE
    SO.xtype = 'u'
AND
    SI.indid > 0
AND
    SI.indid < 255
AND
    (SI.status & 64)=0
ORDER BY
    TableName
    , IndexName
    , SIK.keyno

posted on Thursday, September 27, 2007 12:13 PM Print
Comments
No comments posted yet.

Post Comment

Title *
Name *
Email
Url
Comment *  
Please add 3 and 3 and type the answer here: