惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
N
Netflix TechBlog - Medium
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
博客园_首页
Google DeepMind News
Google DeepMind News
博客园 - 【当耐特】
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Recent Announcements
Recent Announcements
aimingoo的专栏
aimingoo的专栏
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Y
Y Combinator Blog
B
Blog RSS Feed
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
量子位
博客园 - Franky
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
The Cloudflare Blog
有赞技术团队
有赞技术团队
Jina AI
Jina AI
GbyAI
GbyAI

博客园 - Jason's WMI SQL Related Blog

关于SQL SERVER的内存使用的问题 使用Raid提高SQL的性能和可用性 SQL Server BCP 的数据导入导出 - Jason's WMI SQL Related Blog 用脚本查看Server上每个库的大小 Easy way to estimate a table size in the future How to determine which version of SQL Server 2000 is running modify数据时临时暂停触发器的作用 关于MSBA和Firewall 关于如何在BCP和Bulk Insert中使用 文本限定符 简单的ASP.net查询数据库脚本 关于DTS中全局变量数据类型date Log Shipping实现 如何使用SQL 2000的DTS自动从FTP服务器下载文件 SQL Server数据库备份还原 SQl Server中修改数据库的备份模型后要完全备份一次数据库 如何在SQL SErver2000中恢复Master数据库 SQLSERVER 管理DTS包 使用WMI重启不能用3389登录的服务器 如何使用T-SQL来给系统增加计划任务,
用脚本查看某库中每个表大小
Jason's WMI SQL Related Blog · 2005-11-30 · via 博客园 - Jason's WMI SQL Related Blog
用脚本查看某库中每个表大小

--转自SQLSERVERCENTRUAL.com

declare @id        int                       

declare @type        character(2)                

declare        @pages       

int                       

declare @dbname sysname

declare @dbsize dec(15,0)

declare @bytesperpage        dec(15,0)

declare @pagesperMB                dec(15,0)

create table #spt_space

(

        objid                int null,

        rows                int null,

        reserved        dec(15) null,

        data                dec(15) null,

        indexp                dec(15) null,

        unused                dec(15) null

)

set nocount on

-- Create a cursor to loop through the user   tables

declare c_tables cursor for

select        id

from        sysobjects

where        xtype = 'U'

open c_tables

fetch next from c_tables

into @id

while @@fetch_status = 0

begin

        /* Code from sp_spaceused */

        insert into #spt_space (objid, reserved)

                select objid = @id, sum(reserved)

                        from sysindexes

                                where indid in (0, 1, 255)

                                        and id = @id

        select @pages = sum(dpages)

                        from sysindexes

                                where indid < 2

                                        and id = @id

        select @pages = @pages + isnull(sum(used), 0)

                from sysindexes

                        where indid = 255

                                and id = @id

        update #spt_space

                set data = @pages

        where objid = @id

        /* index: sum(used) where indid in (0, 1, 255) - data */

        update #spt_space

                set indexp = (select sum(used)

                                from sysindexes

                                where indid in (0, 1, 255)

                                and id = @id)

                            - data

                where objid = @id

        /* unused: sum(reserved) - sum(used) where indid in (0, 1, 255) */

        update #spt_space

                set unused = reserved

                                - (select sum(used)

                                        from sysindexes

                                                where indid in (0, 1, 255)

                                                and id = @id)

                where objid = @id

        update #spt_space

                set rows = i.rows

                        from sysindexes i

                                where i.indid < 2

                                and i.id = @id

                                and objid = @id

        fetch next from c_tables

        into @id

end

select         TableName = (select left(name,60) from sysobjects where id = objid),

        Rows = convert(char(11), rows),

        ReservedKB = ltrim(str(reserved * d.low / 1024.,15,0) + ' ' + 'KB'),

        DataKB = ltrim(str(data * d.low / 1024.,15,0) + ' ' + 'KB'),

        IndexSizeKB = ltrim(str(indexp * d.low / 1024.,15,0) + ' ' + 'KB'),

        UnusedKB = ltrim(str(unused * d.low / 1024.,15,0) + ' ' + 'KB')

from         #spt_space, master.dbo.spt_values d

where         d.number = 1

and         d.type = 'E'

order by reserved desc

drop table #spt_space

close c_tables

deallocate c_tables