SQLServer 统计数据量


做一个项目,第一件事情就是问:“这个数据库多大?”

下面是统计数据库数据量大小的方法

 

通常我们会使用命令: "sp_helpdb @dbname"

例如,查询数据库"testdb3"的使用量

 

exec sp_helpdb testdb3


  "sp_helpdb"是最常用的命令,

 

   但是注意:该命令显示的数据库大小"db_size"并不是指现存有效数据的大小,而是指:数据库物理文件 “数据文件大小 + 日志文件大小”的总和

   例如上例中,数据库"testdb3"对应的数据文件和日志文件:

  218.112 + 916.352 = 1107.88MB

  

  数据库创始之初,数据文件和日志文件的初始大小都是默认的2M或3M

  当插入数据后,数据文件和日志文件的大小会随着数据量的增长而增长

  但是当删除数据的时候,会发生什么情况呢? 

  数据文件、日志文件会变小么?不会的,还是保持原来的大小

 

怎样获取有效数据的大小?

答案是使用"sp_spaceused"存储过程分别统计每张表的数据量

1)  统计单个表的使用空间

 

exec sp_spaceused 'dbo.t1'

 

2) 统计每个表的使用空间

 

exec sp_MSforeachtable "exec sp_spaceused '?'"





免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM