1. 程式人生 > 資料庫 >檢視sqlserver資料庫中表大小

檢視sqlserver資料庫中表大小

        --itlearner注:顯示錶資訊 select *  from tablespaceinfo  order by cast(left(ltrim(rtrim(reserved)),len(ltrim(rtrim(reserved)))-2) as int) desc       --在查詢分析器中執行 if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tablespaceinfo]') and OBJECTPROPERTY(id,N'IsUserTable') = 1) create table tablespaceinfo --建立結果儲存表 (nameinfo varchar(50),  rowsinfo int,reserved varchar(20),  datainfo varchar(20),  index_size varchar(20),  unused varchar(20) )   delete from tablespaceinfo --清空資料表   declare @tablename varchar(255) --表名稱   declare @cmdsql varchar(500)   DECLARE Info_cursor CURSOR FOR  select o.name  from dbo.sysobjects o where OBJECTPROPERTY(o.id,N'IsTable') = 1  and o.name not like N'#%%' order by o.name   OPEN Info_cursor   FETCH NEXT FROM Info_cursor  INTO @tablename    WHILE @@FETCH_STATUS = 0 BEGIN   if exists (select * from dbo.sysobjects where id = object_id(@tablename) and OBJECTPROPERTY(id,N'IsUserTable') = 1) execute sp_executesql  N'insert into tablespaceinfo exec sp_spaceused @tbname',N'@tbname varchar(255)',@tbname = @tablename   FETCH NEXT FROM Info_cursor  INTO @tablename  END   CLOSE Info_cursor DEALLOCATE Info_cursor GO