【SQL Server】实现批量查询数据库表所占空间

2024-10-13 21:10:08

1、首先来讲一下我的思路,在要批量查询的数据库中新建一个表,主要负责收集本数据库中所有表的表名,然后通过一个insert的触发器,每次向表里添加表名,都会触发这个触发器,这个触发器的作用就是每添加一条信息,就直接显示出这个表名所对应的表所占空间大小。

2、我们首先来创建一个数据库辅助表,当然了,这不是关键的部分,这里就省略代码了,会基本数据库操作的朋友应该都了解这个语句啦。

【SQL Server】实现批量查询数据库表所占空间

4、虽然看似简单的几句,可是还是需要解释一下这个触发器的构造,希望能够对新手有帮助,首先,第一行的意思就是我们创建了一个叫mytrigger的触发器,这个触发器是作用在AddTable表上的。

【SQL Server】实现批量查询数据库表所占空间

6、接下来就好理解了,在之前的经验里有涉及到,定义一个varchar类型的sql参数,大小为max,然后初始化sql参数为空字符。

【SQL Server】实现批量查询数据库表所占空间

8、到这里,触发器就已经创建好了,就等对AddTable表进行添加操作来触发它了,接下来,我们根据之前的需求,把这个数据库中的表名查询出来,然后都添加到帆歌达缒AddTable表中。首先我们来看一下如何查询数据库中所有的表名。语句就是:select Name from sysobjects where xtype='u'

【SQL Server】实现批量查询数据库表所占空间

10、执行后,我们会发现,在数据库进行逻辑添加的过程中,对应的表的数据也就出来了。

【SQL Server】实现批量查询数据库表所占空间
猜你喜欢