用SQL统计SQLServe表存储空间大小的代码

其实SQLServer提供了一个sp_spaceused的系统存储过程可以实现该功能,下面就是调用的SQL:

复制代码 代码如下:

create table #tb(表名 sysname,记录数 int

,保留空间 varchar(10),使用空间 varchar(10)

,索引使用空间 varchar(10),未用空间 varchar(10))

insert into #tb exec sp_MSForEachTable 'EXEC sp_spaceused ''?'''

select * from #tb

go

drop table #tb

这样就可以枚举出每个表存储空间的详细使用情况!

时间: 2024-09-10 16:25:10

用SQL统计SQLServe表存储空间大小的代码的相关文章

用SQL统计SQLServe表存储空间大小的代码_MsSql

其实SQLServer提供了一个sp_spaceused的系统存储过程可以实现该功能,下面就是调用的SQL: 复制代码 代码如下: create table #tb(表名 sysname,记录数 int ,保留空间 varchar(10),使用空间 varchar(10) ,索引使用空间 varchar(10),未用空间 varchar(10)) insert into #tb exec sp_MSForEachTable 'EXEC sp_spaceused ''?''' select * f

SQL Update多表联合更新的方法_数据库其它

有些时候我们需要同时更新多个表中的数据那么就需要用到下面方法了: (1) sqlite 多表更新方法 复制代码 代码如下: //---------------------------------- update t1 set col1=t2.col1 from table1 t1 inner join table2 t2 on t1.col2=t2.col2 这是一个非常简单的批量更新语句 在SqlServer中支持此语法 sqlite中却不支持 sqlite中可转换为 如下语法 复制代码 代码

PostgreSQL 查看数据库,索引,表,表空间大小的示例代码_PostgreSQL

一.简介 PostgreSQL 提供了多个系统管理函数来查看表,索引,表空间及数据库的大小,下面详细介绍一下. 二.数据库对象尺寸函数 函数名 返回类型 描述 pg_column_size(any) int 存储一个指定的数值需要的字节数(可能压缩过) pg_database_size(oid) bigint 指定OID的数据库使用的磁盘空间 pg_database_size(name) bigint 指定名称的数据库使用的磁盘空间 pg_indexes_size(regclass) bigin

SQL Artisan多表查询和统计

sql|统计    编写基于几个表的关联查询和统计的确是件烦琐的事情,由于基于字符的描述很多信息难以抽取出来共用,当其他地方需要这种情况的时候又必须重写.为了避免这情况SQL Artisan引用了视图对象,通过视图对象描述数据查询的信息:视图对象有一个最大的好处就是继承,可以从一个已经有的对象(实体对象或视图对象)继承下来扩展新的查询功能描述.实际应用中你可以建立一个基础统计视图对象,然后根据情况派生出具体的统计对象(如:根据不同信息分组,显示那些字段信息等). 下面是一些简单例程代码:    

SQL Server中统计每个表行数的快速方法

这篇文章主要介绍了SQL Server中统计每个表行数的快速方法,本文不使用传统的count()函数,因为它比较慢和占用资源,本文讲解的是另一种方法,需要的朋友可以参考下 我们都知道用聚合函数count()可以统计表的行数.如果需要统计数据库每个表各自的行数(DBA可能有这种需求),用count()函数就必须为每个表生成一个动态SQL语句并执行,才能得到结果.以前在互联网上看到有一种很好的解决方法,忘记出处了,写下来分享一下. 该方法利用了sysindexes 系统表提供的rows字段.rows

参考sql2012存储过程写的统计所有用户表尺寸大小的示例

可以结合sp_MSforeachdb再遍历所有用户数据库查看所有表的尺寸大小,注意它的参数@sql不能超过nvarchar(2000),这里就不贴出代码了.另外还可以定期运行并将结果保存下来,以便观察数据变化趋势. 查询单个数据库的所有用户表尺寸大小: 复制代码 代码如下:Select @@servername as ServerName,db_name() as DBName ,object_id as ObjectID, schema_name(schema_id) as SchName,

SQL Server 2005 查看数据库表的大小 按照表大小排列

(1)Question:尼玛一个数据库,动辄几十个G,伤不起啊,怎样才能知道当前数据库里面各个表的大小呢?以便将部分较大的数据库表中不容易被频繁访问的数据归档到历史表中,例如每天将一个自然年以前的数据放入历史表中.(2)Key:网上搜了一圈,关键字sp_spaceused (参见:http://msdn.microsoft.com/zh-cn/library/ms188776.aspx)(3)Sample:同时找到了一个示例(参见:http://www.linuxso.com/linuxxito

SQL SERVER如何改变包大小

自从搭了复制之后以为可以安枕无忧了,谁不知问题接踵而来 这次遇到的问题是丢包,不知道情况的读者可以先看一下我之前写的一篇<SQLSERVER监控复制并使用数据库邮件功能发告警邮件> 因为机房C和机房A不在一个局域网,网络状况不是太好 分发积压的命令经常处于20W+条,复制并没有报错,每次传递的事务都是少于30个,正常来讲SQLSERVER默认每次会传输100个事务 后来测试了一下网络情况 从分发服务器ping一下订阅服务器,ping  4096Byte大小的包,ping100次,因为分发默认传

[C#][MySql]统计数据表总行数函数--C#和MySQL开发

Web.config设置 <?xml version="1.0"?> <configuration>   <connectionStrings>     <add name="MyConnectionString" connectionString="server=localhost;user id=root;password=123456;database=demo; pooling=true;"/&g