有效确定 SQL Server 表中的行数
数据库管理员经常需要检查其 SQL Server 数据库中的数据量。 本文提供了一种识别具有非零行数的表的解决方案,这可能会触发数据库重新初始化。
以下 SQL 脚本提供了一种简化的方法:
<code class="language-sql">CREATE TABLE #counts (table_name VARCHAR(255), row_count INT); EXEC sp_MSForEachTable @command1='INSERT #counts (table_name, row_count) SELECT ''?'', COUNT(*) FROM ?'; SELECT table_name, row_count FROM #counts ORDER BY table_name, row_count DESC; DROP TABLE #counts;</code>
此脚本使用 sp_MSForEachTable
迭代每个表。 对于每个表,它都会计算行数并将表名称和行数插入临时表 #counts
.
结果按表名称和行数(降序)排序,提供了数据分布的清晰概述。
要计算整个数据库的总行数,请添加以下语句:
<code class="language-sql">SELECT SUM(row_count) AS total_row_count FROM #counts;</code>
这有效地总结了整个数据库的大小。 该脚本使数据库管理员能够有效地监控数据量、识别空表并通知数据库维护和重新初始化决策。
以上是如何高效统计所有SQL Server数据库表的行数?的详细内容。更多信息请关注PHP中文网其他相关文章!