• 1
  • 2
  • 3
  • 4
  • 5
mysql数据库问题 首 页  »  帮助中心  »  数据库  »  mysql数据库问题
虚拟主机SQL Server 2008数据库检查各个表占用的空间的方法
发布日期:2015-12-2 17:12:54

  虚拟主机SQL Server 2008数据库检查各个表占用的空间的方法

  在使用虚拟主机时,经常遇到数据库变满的情况。如果查看哪个表占用了最大的数据库空间怎么做呢?

  在使用使用主机CP控制台【cp.hichina.com】中数据库DMS控制台检查。

  打开数据库DMS控制台,如下图所示:


  点击SQL 窗口: 输入如下内容:

  create table #Data(name varchar(100),row varchar(100),reserved varchar(100),data varchar(100),index_size varchar(100),unused varchar(100))

  declare @name varchar(100)

  declare cur cursor for

  select name from sysobjects where xtype='u' order by name

  open cur

  fetch next from cur into @name

  while @@fetch_status=0

  begin

  insert into #data

  exec sp_spaceused @name

  print @name

  fetch next from cur into @name

  end

  close cur

  deallocate cur

  create table #DataNew(name varchar(100),row int,reserved int,data int,index_size int,unused int)

  insert into #dataNew

  select name,convert(int,row) as row,convert(int,replace(reserved,'KB','')) as reserved,convert(int,replace(data,'KB','')) as data,

  convert(int,replace(index_size,'KB','')) as index_size,convert(int,replace(unused,'KB','')) as unused from #data

  如下图所示:

  点击“执行(F8)"按钮;


  然后再执行: select * from #dataNew order by data desc 查看结果, 如下图所示:


  这样就查出来各个表占用空间的情况了。