در این مقاله میخواهیم با استفاده از اسکریپت که در ذیل آن را قرار میدهیم، سایز جداول یک دیتابیس را در sql server بدست آوریم.
با اجرای این اسکریپت در دیتابیس مورد نظر خود در یک سشن
SELECT
t.NAME AS TableName,
p.rows AS RowCounts,
SUM(a.total_pages) * 8 AS TotalSpaceKB,
SUM(a.used_pages) * 8 AS UsedSpaceKB,
(SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB
FROM
sys.tables t
INNER JOIN
sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN
sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN
sys.allocation_units a ON p.partition_id = a.container_id
WHERE
t.NAME NOT LIKE 'dt%'
AND t.is_ms_shipped = 0
AND i.OBJECT_ID > 255
GROUP BY
t.Name, p.Rows
ORDER BY
TotalSpaceKB desc
همانگونه که مشاهده میکنید خروجی این select به ترتیب نام جدول، تعداد رکوردهای جدول، سایز کل جدول، فضای خالی جدول و فضای استفاده شده جدول را براساس کیلوبایت و به سورت مرتب شده نمایش میدهد.