Oft ist es notwendig, sich für alle Tabellen einer Datenbank die Größe und die Zeilenzahl anzeigen zu lassen.
Für diesen Fall kann dieses kleine (MS)SQL-Skript helfen:
DECLARE @table table(Id int IDENTITY(1,1) , Name varchar(256)) INSERT INTO @table SELECT b.name + '.'+ a.name FROM sys.tables a INNER JOIN sys.schemas b ON a.schema_id = b.schema_id INSERT INTO @table SELECT '-1' DECLARE @result table( TableName varchar(256) , TotalRows int , Reserved varchar(50) , DataSize varchar(50) , IndexSize varchar(50) , UnusedSize varchar(50)) DECLARE @temp varchar(256) DECLARE @index int SET @index = 1 WHILE 1=1 BEGIN SELECT @temp = Name FROM @table WHERE Id = @index IF @temp = '-1' BREAK INSERT @result( TableName , TotalRows , Reserved , DataSize , IndexSize , UnusedSize) EXEC sp_spaceused @temp SET @index = @index + 1 END SELECT c.name+'.'+b.name as [table] , a.* FROM @result a INNER JOIN sys.tables b ON a.TableName = b.name INNER JOIN sys.schemas c ON b.schema_id = c.schema_id ORDER BY TotalRows DESC
(Quelle: www.codemeit.com)