最近公司的数据库发现有表的数据被弄掉了,有些数据表记录为0,于是想找出此数据库中到底有哪些数据表的记录都为0以缩小分析范围,可使用如下的sql statement
代码如下:
create table #tmptb(tbname sysname,tbrows int
,tbreserved varchar(10),tbdata varchar(10)
,tbindexsize varchar(10),tbunused varchar(10))
insert into #tmptb exec sp_msforeachtable 'exec sp_spaceused ''?'''
select * from #tmptb --列出所有表的情况
select tbrows ,tbname from #tmptb where tbrows=0 --列出记录数据为0的表
order by tbname
drop table #tmptb
其中
tbname 表名
tbrows 记录数
tbreserved 保留空间
tbdata 使用空间
tbindexsize 索引使用空间
tbunused 未用空间