Für die Auflistung aller vorhandenen Tabellen einer Datenbank ab SQL Server 2005 inklusive der Zeilenanzahl und Größe eignet sich folgender Batch:
DECLARE @tabName NVARCHAR(128) CREATE TABLE #res (name NVARCHAR(128), [rows] NVARCHAR(100), reserved NVARCHAR(100), data NVARCHAR(100), index_size NVARCHAR(100), unused NVARCHAR(100)) DECLARE crsr CURSOR FOR SELECT TABLE_SCHEMA + '.' + TABLE_NAME FROM INFORMATION_SCHEMA.Tables OPEN crsr FETCH NEXT FROM crsr INTO @tabName WHILE @@FETCH_STATUS = 0 BEGIN INSERT #res EXEC sp_spaceused @tabName FETCH NEXT FROM crsr INTO @tabName END CLOSE crsr DEALLOCATE crsr SELECT * FROM #res DROP TABLE #res
Tags: SQL, SQLServer 2005, SQLServer 2008