有没有办法找出我的数据库中一行占用多少空间(在磁盘上)?找出数据库中一行所占用的存储量有多少
我很想看到它的SQL Server CE,但没有SQL Server 2008的工作原理(我在两个存储大约相同的数据)。
我问的原因是我有我的SQL Server CE数据库中的图像列(这是SQL 2008数据库中的varbinary [max]),我现在需要知道现在我可以存储很多行,我的设备上的内存。
有没有办法找出我的数据库中一行占用多少空间(在磁盘上)?找出数据库中一行所占用的存储量有多少
我很想看到它的SQL Server CE,但没有SQL Server 2008的工作原理(我在两个存储大约相同的数据)。
我问的原因是我有我的SQL Server CE数据库中的图像列(这是SQL 2008数据库中的varbinary [max]),我现在需要知道现在我可以存储很多行,我的设备上的内存。
也许不是100%,你想要什么,但如果你想知道一个图像多少大小采取只是做
SELECT [RaportID]
,DATALENGTH([RaportPlik]) AS 'FileSize'
,[RaportOpis]
,[RaportDataOd]
,[RaportDataDo]
FROM [Database]
你自己需要做的任何其他附加计数(如预测等)。
你只能做粗略的估计 - 目前还没有确切答案的问题“多少行,我可以出内存我最大前存储设备上”既然你没有专用设备的 - 其他程序也占用资源,只能知道目前有多少存储空间可用,而不是将来的某个时间。此外,您的图像可能会被压缩,因此会占用不同数量的RAM。
对于猜测的目的,只是图像的大小是行大小的一个很好的近似值;行结构的开销可以忽略不计。
对于每一行,varbinary(max)列可能包含最多2GB的数据。对于基于现有数据的估计使用情况,也许您可以使用DATALENGTH函数进行一些分析,以确定您的图像中典型的图像占用的空间,并从中推断出来。
正是我在找的东西。感谢这个例子 – Vaccano 2010-04-20 16:32:29