本帖最后由 da11 于 2024-11-4 08:53 编辑
达梦数据库开启统计功能并查询用户下所有的表名及数据量
在达梦在线试玩中已确认,可以使用user_tables查询本用户下的所有表名,
至于数据量,就算是ORACLE也不会有哪张表或者视图能时刻精准记录数据量,准确的数据量必须count一下对应的表才知道。oracle静态视图中记录的数据量是通过执行统计信息收集才得到的,在下次执行统计信息收集前,视图中记录的数据量不会变化。达梦和oracle收集统计信息的命令是完全一样的,比如
----更新统计信息(模式T11下的所有对象)
dbms_stats.GATHER_SCHEMA_stats ('T11');
----更新统计信息(模式T11下的表T11)
dbms_stats.GATHER_TABLE_STATS ('T11','T11');
----更新统计信息(模式T11下的索引IDX_T11_ID)
dbms_stats.GATHER_INDEX_STATS('T11','IDX_T11_ID');
实测截图
附上查询某个模式下所有表的数据量及降序排序的sql
SELECT TABLE_NAME, NUM_ROWS
FROM ALL_TABLES
WHERE OWNER = 'THISYOUROWNER' ORDER BY NUM_ROWS DESC;
|