网上查询了一些代码,做了些修改,不会在数据库里留下垃圾,呵呵。直接复制运行即可。
SET NOCOUNT ON
DECLARE @tablename VARCHAR(255)
DECLARE table_list_cursor CURSOR
FOR
SELECT name
FROM sys.tables
ORDER BY name
--打开游标
OPEN table_list_cursor
--读取第一条数据
FETCH NEXT FROM table_list_cursor INTO @tablename
SELECT CONVERT(NVARCHAR(255), '') AS name ,
1 AS [rows] ,
CONVERT(NVARCHAR(255), '') AS 'res' ,
CONVERT(NVARCHAR(255), '') AS data ,
CONVERT(NVARCHAR(255), '') AS indexs ,
CONVERT(NVARCHAR(255), '') AS unuse
INTO #temp
--遍历查询到的表名
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO #temp
EXEC sp_spaceused @tablename
FETCH NEXT FROM table_list_cursor INTO @tablename
END
--释放游标
CLOSE table_list_cursor
DEALLOCATE table_list_cursor
SELECT *
FROM #temp;
DROP TABLE #temp;