SQL计算数据库表占用的真实空间大小
2011-07-01 10:49
573 查看
最近客户的数据库暴涨,一开始找不到原因,用sql查询表的空间大小,结果之前用的sql语句只能查询除了text,image外的字段大小.搞得一时间混乱不堪.后来咨询了大师们,找到用sp_spaceused这个系统函数可以查询表的真实大小,包含text等字段.sql如下:
declare @id NVARCHAR(100) create table #spt_space ( [name] NVARCHAR(50) null, [rows] int null, [reserved] NVARCHAR(50) null, [data] NVARCHAR(50) null, [index_size] NVARCHAR(50) null, [unused] NVARCHAR(50) null ) set nocount on declare c_tables cursor for select name from sysobjects where xtype = 'U' open c_tables fetch next from c_tables into @id while @@fetch_status = 0 begin /* Code from sp_spaceused */ insert into #spt_space ([name],[rows],reserved,data,index_size,unused) EXEC sp_spaceused @id fetch next from c_tables into @id end SELECT * FROM( SELECT *,CAST(REPLACE(reserved,'KB','') AS INT) AS reservedindex FROM #spt_space ) c order by c.reservedindex desc drop table #spt_space close c_tables deallocate c_tables
相关文章推荐
- SQL Server 查看数据表占用空间大小的SQL语句
- 快速查看SQL各表的数据量以及占用空间大小
- 简单统计SQLSERVER用户数据表大小(包括记录总数和空间占用情况)
- python 基本数据类型占用内存空间大小
- sql 语句列出数据库中的表的记录数、占用空间大小等
- 压缩Sqlite数据文件大小,解决数据删除后占用空间不变的问题
- 计算Android App占用的各种空间大小
- Oracle 计算表占用空间大小
- 计算数据库中各个表的数据量和每行记录所占用空间
- struct和union在内存中占用空间大小的计算
- 简单统计SQLSERVER用户数据表大小(包括记录总数和空间占用情况)
- 计算Android App占用的各种空间大小
- 一行sql返回mysql中各数据库占用空间大小
- 查看MSSQL数据库表占用的空间
- 查看mysql中database占用磁盘空间的大小SQL语句【测试通过】
- 查看mysql 数据表的真实大小空间情况
- 计算数据库中各个表的数据量和每行记录所占用空间
- 例题2.2 计算数据类型所占内存空间大小
- MySQL中查询所有数据库占用磁盘空间大小和单个库中所有表的大小的sql语句
- 简单统计SQLSERVER用户数据表大小(包括记录总数和空间占用情况)