1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| DECLARE @TABLE_NAME SYSNAME; SET @TABLE_NAME = 'MA_TABLE'
DECLARE @INDEXES_STATS TABLE
(
TABLE_NAME SYSNAME, --ObjectName
OBJECTID INT, --ObjectId
INDEX_NAME SYSNAME, --IndexName
INDEXID INT, --IndexId
[LEVEL] INT, --Level
PAGES INT, --Pages
ROWS INT, --Rows
MINIMUMRECORDSIZE INT, --MinimumRecordSize
MAXIMUMRECORDSIZE INT, --MaximumRecordSize
AVERAGERECORDSIZE DECIMAL, --AverageRecordSize
FORWARDEDRECORDS INT, --ForwardedRecords
EXTENTS INT, --Extents
EXTENTSWITCHES INT, --ExtentSwitches
AVERAGEFREEBYTES DECIMAL, --AverageFreeBytes
AVERAGEPAGEDENSITY DECIMAL, --AveragePageDensity
SCANDENSITY DECIMAL, --ScanDensity
BESTCOUNT INT, --BestCount
ACTUALCOUNT INT, --ActualCount
LOGICALFRAGMENTATION DECIMAL, --LogicalFragmentation
EXTENTFRAGMENTATION DECIMAL --ExtentFragmentation
);
INSERT @INDEXES_STATS
EXEC ('DBCC SHOWCONTIG (''' + @TABLE_NAME + ''') WITH TABLERESULTS, ALL_INDEXES, NO_INFOMSGS');
SELECT TABLE_NAME [TABLE], INDEX_NAME [INDEX], PAGES, LOGICALFRAGMENTATION LGC_FRAG, EXTENTS XTTS, EXTENTSWITCHES XTTS_SW,
EXTENTFRAGMENTATION XTTS_FRAG, AVERAGEFREEBYTES AVG_FREE_BYTES, AVERAGEPAGEDENSITY AVG_PG_DST
FROM @INDEXES_STATS |
Partager