查询实例中每个DB中所有表的详细信息

这段SQL脚本用于查询指定数据库或所有数据库中的表的详细信息,包括表名、所属架构、行数、占用空间(KB、MB、GB)。脚本首先创建一个临时表存储请求的表信息,然后遍历数据库,获取每个表的大小数据,并存储到另一个临时表中。最后,脚本将展示所有查询结果。
摘要由CSDN通过智能技术生成
-- =====================================================
-- Script for:
-- table size information query.
-- single database, can Ignore schema name
-- =====================================================
SET NOCOUNT ON;
DECLARE
	@size__unit decimal(24, 20),
	@flag_check_server bit,
	@request_tables nvarchar(max)
;
SELECT
	@size__unit = 8,						-- KB
	@size__unit = @size__unit / 1024,		-- MB
	@size__unit = @size__unit / 1024,		-- GB

	@flag_check_server = 0,
	@request_tables = N'
*.*.*.*
';

IF OBJECT_ID(N'tempdb..#tb_request') IS NOT NULL
	DROP TABLE #tb_request;

CREATE TABLE #tb_request(
	id int IDENTITY
		PRIMARY KEY,

	server_name sysname,
	database_name sysname,
	schema_name sysname,
	object_name sysname,
	
	UNIQUE(
		server_name, database_name, schema_name, object_name
	)
	WITH(
		IGNORE_DUP_KEY = ON
	)
);

WITH
DATA AS(
	SELECT
		server_name = PARSENAME(T.c.value('r[1]/text()[1]', 'sysname'), 1),
		database_name = PARSENAME(T.c.value('r[2]/text()[1]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值