SQL Server 2008系统信息查询常用命令 查看表大小、记录数等

1、返回所有数据库信息(数据库名,创建日期,存储路径等)。
1 use master;
2 GO
3 select * from dbo.sysdatabases

2、返回当前数据库所有对象(可根据type字段过滤出用户表,索引等)。

1 USE AdventureWorks2008R2;
2 GO
3 SELECT * FROM SYS.objects WHERE TYPE='U'

3、查询指定库中所有表信息(记录数,使用空间等)。

 1 USE AdventureWorks2008R2;
 2 GO
 3 exec sp_MSForEachTable 
 4 @precommand=N'create table ##(
 5 表名 sysname,
 6 记录数 int,
 7 保留空间 Nvarchar(10),
 8 使用空间 varchar(10),
 9 索引使用空间 varchar(10),
10 未用空间 varchar(10))',
11 @command1=N'insert ## exec sp_spaceused ''?''',
12 @postcommand=N'select * from ## order by 记录数 '
13 
14 DROP TABLE ##

结果如下:

表名        记录数      保留空间   使用空间   索引使用空间  未用空间      
----------  ----------- ---------- ---------- ------------ ----------
discounts   3           16 KB      8 KB       8 KB         0 KB
stores     
6           24 KB      8 KB       16 KB        0 KB

 

4、返回指定库所有表的记录数(使用系统函数sp_MSforeachtable(Table))。

1 USE AdventureWorks2008R2;
2 go
3 CREATE TABLE #temp (TableName VARCHAR (255), RowCnt INT)
4 EXEC sp_MSforeachtable 'INSERT INTO #temp SELECT ''?'', COUNT(*) FROM ?'
5 SELECT TableName, RowCnt FROM #temp ORDER BY RowCnt
6 
7 DROP TABLE #temp;

 

 全部在SQL Server 2008 R2环境下测试通过。

转载于:https://www.cnblogs.com/net515/archive/2013/02/01/2889069.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值