查看MSSQLServer2008数据库表占存储空间的sql

---==============查看数据库表的容量大小========start================================?============
Create Table #TableSpaceInfo --创建结果存储表
(
  NameInfo NVarchar(50) ,
  RowsInfo int ,
  Reserved NVarchar(20) ,
  DataInfo NVarchar(20) ,
  Index_Size NVarchar(20) ,
  Unused NVarchar(20)
)

Declare @TableName NVarchar(255) --表名称
Declare @CmdSql NVarchar(1000)

Declare Info_Cursor Cursor For
Select o.Name
From dbo.sysobjects o
Where objectProperty(o.ID, N‘IsTable‘) = 1 and o.Name not like N‘#%%‘ Order By o.Name

Open Info_Cursor

Fetch Next From Info_Cursor
Into @TableName

While @@FETCH_STATUS = 0
Begin
  If exists (Select * From dbo.sysobjects Where ID=object_ID(@tablename) and objectProperty(ID, N‘IsUserTable‘) = 1)
    Execute sp_executesql N‘Insert Into #TableSpaceInfo Exec sp_Spaceused @TBName‘, N‘@TBName NVarchar(255)‘, @TBName = @TableName

  Fetch Next From Info_Cursor
  Into @TableName
End

Close Info_Cursor
Deallocate Info_cursor
GO

--itlearner注:显示数据库信息
sp_spaceused @UpdateUsage = ‘TRUE‘

--itlearner注:显示表信息
Select *
From #TableSpaceInfo
Order By cast(left(lTrim(rTrim(Reserved)) , len(lTrim(rTrim(Reserved)))-2) As Int) Desc

Drop Table #TableSpaceInfo
---================查看数据库表的容量大小=====end========================?==========================

  

时间: 2024-12-10 02:57:18

查看MSSQLServer2008数据库表占存储空间的sql的相关文章

如何查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件

要查看Oracle数据库表空间大小,是否需要增加表空间的数据文件,在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问题比较常见. --1.查看表空间已经使用的百分比 Sql代码 select   a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024   "used MB",b.bytes/1024/1024 "free MB",round(((a.by

mysql查看每个数据库所占磁盘大小

#查看每个数据库所占磁盘大小 SELECT TABLE_SCHEMA AS "库名", TRUNCATE(SUM(`DATA_LENGTH`) / 1024 / 1024, 2) AS "表所占空间(MB)", TRUNCATE(SUM(`INDEX_LENGTH`) / 1024 / 1024, 2) AS "索引所占空间(MB)", TRUNCATE((SUM(`DATA_LENGTH`) + SUM(`INDEX_LENGTH`)) / 1

批量更改数据库表架构(生成sql后直接执行!)

批量更改数据库表架构(生成sql后直接执行!) use my_test; --当前数据库 declare @alltable varchar(1000), @SchemaOld varchar(1000), @SchemaNew varchar(1000), @NewSql VARCHAR(max), @Index INT; SET @SchemaOld='';--原架构名称 SET @SchemaNew='';--新架构名称 SET @NewSql=''; SET @Index=1; SELE

如何查看mysql数据库表所使用的引擎(转载)

我们怎么样才能准确的查看mysql的存储引擎呢,下面我给大家介绍两种正确的方式. 1)正确方式一: SHOW TABLE STATUS from 数据库库名 where Name='表名' 2)mysqlshow -u 数据库登录帐号 -p 有时的时候,我们想查看以下mysql的表的存储引擎是什么类型的,不用说,大家直接想到的就是使用show create table命令查看创建表的命令,从而直接认为定义表的引擎就是表的真正存储引擎,这个方法在大多数情况下是没有错的,但是在有的时候却是致命的错误

SQL Server中,如何查看每个数据库的Owner是哪个SQL Server账户,也就是谁创建的

有时候我们作为SQL Server的DBA,会需要查找每个数据库的Owner是哪个SQL Server账户,也就是谁创建的. 我们可以使用系统存储过程"sys.sp_helpdb",查询到每个数据库的Owner是哪个SQL Server账户: EXEC sys.sp_helpdb 结果如下: 通过查询结果中的owner列,我们就可以知道每个数据库的Owner是哪个SQL Server账户,也就是谁创建的. 原文地址:https://www.cnblogs.com/OpenCoder/p

Oracle数据库表空间使用率查询SQL

SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "已建表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB 100,2),'990.99') "使用比", F.TOTAL

将Hive统计分析结果导入到MySQL数据库表中(三)——使用Hive UDF或GenericUDF

前面我分别介绍了两种Hive将分析结果导入到MySQL表的两种方式:Sqoop导入方式和使用Hive.MySQL JDBC驱动,现在我介绍第三种,也是使用比较多的方式--使用Hive 自定义函数(UDF或GenericUDF)将每条记录插入到数据库表中. 一.使用UDF方式 使用UDF方式实现比较简单,只要继承UDF类,并重写evaluate方法即可 1.编写实现类 package com.gxnzx.hive.udf; import org.apache.hadoop.hive.ql.exec

优化Oracle数据库表设计

绝大多数的Oracle数据库性能问题都是由于数据库设计不合理造成的,只有少部分问题根植于Database Buffer.Share Pool.Redo Log Buffer等内存模块配置不合理,I/O争用,CPU争用等DBA职责范围上.所以除非是面对一个业已完成不可变更的系统,否则我们不应过多地将关注点投向内存.I/O.CPU等性能调整项目上,而应关注数据库表本身的设计是否合理,库表设计的合理性才是程序性能的真正执牛耳者.合理的数据库设计需要考虑以下的方面: ·业务数据以何种方式表达.如一个员工

如何用Ajax实现地址栏省市级联动(数据库表数据源)

HTML: 1 <tr> 2 <th> 3 <label for="textfield"><span class="red">*</span>收货地址:</label> 4 </th> 5 <td> 6 <select name="data[province]" id="province2" onchange="ge