我有一张数据保存快照的表。这些快照都标有'jan2010'
或'april2011'
。随着时间的推移,所有快照都将呈指数级增长,我想知道我是否可以预测何时需要升级存储。
有没有办法
select monthlysnapshot, sum(size)
from tblclaims_liberty
group by monthlysnapshot
order by monthlysnapshot desc
为了获得返回的数据大小,我错过了什么?我可以打电话给系统功能吗?
答案 0 :(得分:3)
EXEC sp_spaceused'tablename'
这将返回一个提供以下信息的结果集:
名称 - 表格的名称
行 - 表中的行数
保留 - 表格的总预留空间量
数据 - 表格数据使用的空间量
Index_Size - 表索引使用的空间量
未使用 - 表中使用的空间量
答案 1 :(得分:1)
这是你在找什么?
<击> C# Getting the size of the data returned from and SQL query 击>
更改:
EXEC sp_spaceused 'tablename'
如果您可以在代码中使用C#(将代码更改为您使用的任何代码)
long size = 0;
object o = new object();
using (Stream s = new MemoryStream()) {
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(s, o);
size = s.Length;
答案 2 :(得分:0)
我认为您可以通过“select * into newtable from table”将所选数据插入到表中,并获取新创建的表的大小。