3

データベースの行が(ディスク上で)どのくらいのスペースを占めているかを調べる方法はありますか?

SQL Server CEで見たいのですが、SQL Server 2008が機能しない(両方にほぼ同じデータを格納しています)。

私が尋ねる理由は、SQL Server CE dbにImage列(SQL 2008dbではvarbinary[max])があり、メモリを最大限に活用する前に、保存できる行数を知る必要があるためです。端末。

4

3 に答える 3

1

varbinary(max) 列には、行ごとに最大 2 GB のデータが含まれる可能性があります。既存のデータに基づいて使用量を見積もるには、おそらく DATALENGTH 関数を使用して分析を行い、画像の典型的な 1 つが占有しているスペースを特定し、そこから推定することができます。

于 2010-04-20T16:14:07.007 に答える
1

あなたが望んでいた100%ではないかもしれませんが、画像のサイズを知りたい場合は、

SELECT [RaportID]
                      ,DATALENGTH([RaportPlik]) AS 'FileSize'
                      ,[RaportOpis]
                      ,[RaportDataOd]
                      ,[RaportDataDo]
FROM [Database]

自分で行う必要があるその他の追加のカウント (予測など)。

于 2010-04-20T16:17:26.957 に答える
0

大まかな推測しかできません - 「デバイスのメモリを使い切る前に何行保存できるか」という質問に対する正確な答えはありません。デバイスを排他的に使用していないためです - 他のプログラムもリソースを消費します。将来のある時点ではなく、現時点で使用可能なストレージの量のみを知ることができます。さらに、画像は圧縮されている可能性が高いため、さまざまな量の RAM を使用します。

推測のために、画像のサイズは行サイズの適切な近似値です。行構造のオーバーヘッドは無視できます。

于 2010-04-20T16:09:42.610 に答える