Determine Tables Sizes in SQL Server

Everyone is worried about their database size. Even though storage is relatively cheap, if your database is growing linearly or exponentially, you’re going to run into issues down the road. One quick way to check things out is to look at your table sizes. I looked all over the web and found Mitch Sellers’ blog with several great SQL Table Size scripts. Here are 2 of the good ones from the comments:

EXEC sp_MSforeachtable @command1="EXEC sp_spaceused '?'"

This method is quick, but not very clean. You’ll get a separate result for each table, so you really cannot sort. Plus, I like using Excel, so this isn’t export friendly, either.

Mitch initial post is great as long as your tables are in the dbo schema. But, if you have tables in other schemas, Mitch’s script will not display any information. However, I searched through the comments and found what I was looking for. Mark Breen (Twitter?)posted exactly what I was looking for. I’ve modified his script a bit for my use, which is found below:


Rudy Rodarte is a SQL Server Database professional based in Austin, TX. Over his career, Rudy has worked with SSRS, SSIS, performance tuning troubleshooting. When away from Keyboard, Rudy goes to Spurs and Baylor Bear sporting events.

More Posts - Website - Twitter