Aşağıda yazdığım bir komut ile mevcut çalıştırdığınız veritabanı üzerindeki tabloların kayıt sayısı ve o tabloların kapladığı alanları görebilirsiniz.
SET nocount ON
IF (object_id('tempdb..#spaceused') IS NOT NULL) DROP TABLE #spaceused ;
CREATE TABLE #spaceused
(
name NVARCHAR(120),
rows FLOAT,
reserved VARCHAR(18),
data VARCHAR(18),
index_size VARCHAR(18),
unused VARCHAR(18)
)
DECLARE Tables CURSOR
FOR SELECT name
FROM sysobjects
WHERE type = 'U'
ORDER BY name ASC
OPEN Tables
DECLARE @table VARCHAR(128)
FETCH NEXT FROM Tables INTO @table
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO #spaceused
EXEC sp_spaceused @table
FETCH NEXT FROM Tables INTO @table
END
CLOSE Tables
DEALLOCATE Tables
SELECT *
FROM #spaceused
ORDER BY [rows] DESC
DROP TABLE #spaceused
Bu sorgu sonucunda gelen tablo listesine göre tanımlayacağınız indexlerin hangi tablolarda daha çok verim vereceğini görebilmiş olacaksınız.
Indexlerin önemi ve performansı arttırmadaki gücüne bir başka konuda değineceğiz..
