查看并分析数据表所占的空间

--1.新增TEMP TABLE
create   table   #temptable
([name] varchar(50),[rows] bigint,resverved varchar(50),data varchar(50),index_size varchar(50),unused varchar(50))  

--2.执行查询结果
select ‘insert into #temptable exec sp_spaceused ‘‘‘+name+‘‘‘‘
from sysobjects where objectproperty(id,‘IsUserTable‘)=1

--3. 方便查看
update #temptable
set resverved=left(resverved,charindex(‘ ‘,resverved)-1),
data=left(data,charindex(‘ ‘,data)-1),
index_size=left(index_size,charindex(‘ ‘,index_size)-1),
unused=left(unused,charindex(‘ ‘,unused)-1)

--4.查询结果
select * from #temptable
order by cast(resverved as bigint) desc,cast(data as bigint) desc
---5. 为了方便比较,汇总
select convert(char(5),sum(cast(data as bigint))/1024/1024)+‘GB‘
from #temptable

select convert(char(5),sum(cast(unused as bigint))/1024)+‘MB‘
from #temptable

select convert(char(5),sum(cast(resverved as bigint))/1024)+‘MB‘
from #temptable

---有了上面的结果,对每个表进行容量回收,清楚垃圾数据,还可以考虑分离数据库。

--drop table #temptable
时间: 2024-07-30 13:47:44

查看并分析数据表所占的空间的相关文章

不root的情况下 查看App的数据表

一直以来查看sqlite的数据库都需要root才能查看,但是公司的好多测试机root起来比较麻烦~~~ 最近刚好项目上线,略闲, 于是决定写一个library工程便于以后调试代码 关键代码如下 一.查看当前app的数据库 context.databaseList() 其中databaseList方法是ContextWrapper类中的一个方法定义如下 @Override public String[] databaseList() { return mBase.databaseList(); }

查看mysql 数据表的真实大小空间情况

select count(*) from t1; +----------+ | count(*) | +----------+ |        5 | +----------+ SELECT table_name, data_length/1024/1024 AS 'data_length(MB)', index_length/1024/1024 AS 'index_length(MB)', (data_length + index_length)/1024/1024 AS 'total(MB

MyEclipse数据库教程:查看和编辑数据表

在MyEclipse中使用DB浏览器视图来浏览表和使用表数据.在本教程中,你将学习到: 浏览连接数据库 编辑表数据 持续时间:5分钟 没有MyEclipse?立即下载 1. 浏览表数据 使用表数据工作之前,先建立数据库连接. (1)在数据库浏览器中,展开连接节点. 浏览数据库结构 (2)展开数据结构来显示表的元数据,如表.视图和序列. 浏览表信息 2. 编辑表数据 数据库资源管理器工具提供了一个编辑表视图来帮助你在数据库中编辑已经存在的记录. (1)在数据库浏览器中,右键单击一个表,然后选择编辑

查看mysql库和表的大小(空间)

use information_schema; 查询所有数据的大小: select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables; 查看指定数据库的大小: select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='DATABASENAME'; 查看指定数据库的某个表的大小:

Oracle 删除数据后释放数据文件所占磁盘空间

测试的时候向数据库中插入了大量的数据,测试完成后删除了测试用户以及其全部数据,但是数据文件却没有缩小.经查阅资料之后发现这是 Oracle “高水位”所致,那么怎么把这些数据文件的大小降下来呢?解决办法如下: 概念: 表空间的相关知识请见这里,详细的介绍了 Oracle 数据库的存储结构. 高水位:High Water Mark (HWM),是段(Segment)的一个指标,界定了段(Segment)曾经配置过的 block 水位. 据说,随着数据的 insert,所使用段(Segment)的数

[Nhibernate]SchemaExport工具的使用(一)——通过映射文件修改数据表

目录 写在前面 文档与系列文章 SchemaExport工具 SchemaUpdate工具 一个例子 总结 写在前面 上篇文章介绍了使用代码生成器的nhibernate模版来生成持久化类,映射文件等内容.本篇文章将继续介绍工具SchemaExport和SchemaUpdate.说实话,这东西我也是第一次使用,也只能边摸索,边学习了. 一般的开发模式是先将数据库架构设计好,然后再编写持久化类和映射文件,也就是数据库驱动的模式.然而也可以先编写持久化类和映射文件,然后通过SchemaExport工具

mysql之DDL操作--数据表

我们创建好了数据库以后,就可以创建相应的数据表,那么创建表也是属于DDL数据定义层面,接下来我们来学习一下. 1.创建数据表 创建指令:create table tb_name [表选项] 我们发现指令与数据库的创建指令是相同的,没什么大的区别. PS:当然我们创建表之前,首先先选择相应的数据库. 接下来我们创建一张学生信息表 create table student_studentinfo( id int, name varchar(5), class_id int); 关于列类型以及列约束即

MySQL查询数据表中数据记录(包括多表查询)

MySQL查询数据表中数据记录(包括多表查询) MySQL查询数据表中数据记录(包括多表查询) 转自:http://www.baike369.com/content/?id=5355 在MySQL中创建数据库的目的是为了使用其中的数据. 使用select查询语句可以从数据库中把数据查询出来. select语句的语法格式如下: select selection_list // 要查询的内容,选择哪些列 from table_list // 从什么表中查询,从何处选择行 where primary_

mysql数据表的基本操作:表结构操作,字段操作

本节介绍: 表结构操作 创建数据表. 查看数据表和查看字段. 修改数据表结构 删除数据表 字段操作 新增字段. 修改字段数据类型.位置或属性. 重命名字段 删除字段 首发时间:2018-02-18  21:31 表结构操作 创建数据表: 语法  : create table [if not exists] 表名( 字段名字 数据类型, 字段名字 数据类型 )[表选项]; 表选项  : 字符集:charset表中存储数据的字符集 校对集:colloate表中用来校对数据的校对集 存储引擎  :en