gpt4 book ai didi

sql-server - 是否有适用于 SQL Server 2005 的数据大小调整工具?

转载 作者:太空狗 更新时间:2023-10-30 01:51:30 24 4
gpt4 key购买 nike

当为每个表填充预测值时,我必须估计数据库的数据大小。它至少应包括用于数据和索引的大小。

在 SQL Server 2000 中曾经有这样的工具,当提供每个表的记录量时,它会生成一个估计的大小(我认为它与 SQL 2000 资源工具包一起提供)。我找不到适用于 2000 年或 2005 年的工具 :(

我知道 sp_spacedused,但这对我不起作用,因为我必须用值预先填充数据库,而且我可能有很多场景需要计算。

最佳答案

在您看来,我可能只是创建数据库并尝试用具有代表性的数据样本填充它,然后检查表的大小。

此 SQL 脚本对所有表执行此操作 - 您不必在每个表上调用 sp_spaceused:

SELECT 
t.NAME AS TableName,
i.name as indexName,
sum(a.total_pages) as TotalPages,
sum(a.used_pages) as UsedPages,
sum(a.data_pages) as DataPages,
(sum(a.total_pages) * 8) / 1024 as TotalSpaceMB,
(sum(a.used_pages) * 8) / 1024 as UsedSpaceMB,
(sum(a.data_pages) * 8) / 1024 as DataSpaceMB
FROM
sys.tables t
INNER JOIN
sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN
sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN
sys.allocation_units a ON p.partition_id = a.container_id
WHERE
t.NAME NOT LIKE 'dt%' AND
i.OBJECT_ID > 255 AND
i.index_id <= 1
GROUP BY
t.NAME, i.object_id, i.index_id, i.name
ORDER BY
object_name(i.object_id)

关于sql-server - 是否有适用于 SQL Server 2005 的数据大小调整工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/545163/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com