Recuperare lo spazio occupato da ogni tabella SQL

Quanto spazio occupa una determinata tabella all’interno del mio DataBase ? Uno script t-sql permette di recuperarlo da ogni tabella presente in un database.

DECLARE @TableSize
TABLE
(
   TableName sysname
   ,row_count INT
   ,reserved VARCHAR(50)
   ,data VARCHAR(50)
   ,index_size VARCHAR(50)
   ,unused VARCHAR(50)
)
 
DECLARE @ExecSQL varchar(MAX);
SET @ExecSQL='';
 
WITH cte as
(
   SELECT 'exec sp_spaceused ''' + Table_Schema + '.' + Table_Name + '''' as Command FROM information_schema.tables WHERE TABLE_TYPE = 'BASE TABLE'
)
 
SELECT @ExecSQL=@ExecSQL+Command FROM cte INSERT INTO @TableSize (TableName,row_count,reserved,data,index_size,unused)
 
EXEC (@ExecSQL)

SELECT * FROM @TableSize

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *