查询人大金仓数据库某个数据库所有数据的大小
时间: 2024-02-27 15:54:58 浏览: 316
查看数据库所有表大小
查询人大金仓数据库某个数据库所有数据的大小,可以使用以下 SQL 语句:
```
SELECT
SUM(DATALENGTH(sysobjects.[name]) +
INDEXPROPERTY(sysobjects.[id], sysindexes.[indid], 'length'))/1024/1024 AS "Size in MB"
FROM
sysobjects
JOIN
sysindexes ON sysobjects.[id] = sysindexes.[id]
WHERE
sysobjects.[type] IN ('U') AND
sysindexes.[indid] < 2 AND
OBJECTPROPERTY(sysobjects.[id], 'IsMSShipped') = 0 AND
sysobjects.[name] NOT LIKE 'dt%'
```
其中,`sysobjects` 和 `sysindexes` 是系统表,`sysobjects.[name]` 表示表或索引的名称,`sysindexes.[indid]` 表示索引的 ID,`SUM` 函数和 `DATALENGTH` 函数用于计算表和索引的大小,单位为字节,最后将大小转换为 MB。
需要注意的是,这里的数据大小包括表和索引的大小,不包括触发器、存储过程、视图等其他对象的大小。如果需要查询其他对象的大小,可以在 `sysobjects.[type]` 条件中添加相应的对象类型。
阅读全文