我试图弄清楚从SQL Server返回的有效负载的大小。我的代码是使用ADO.NET:
using (var command = new SqlCommand("SELECT * FROM [dbo].[Products]", connection))
{
SqlDataReader reader = command.ExecuteReader();
// find # of bytes of payload returned
但是,我不确定如何获得从SQL Server返回的大小。有没有办法使用SqlDataReader
我能做到的?
答案 0 :(得分:1)
尝试以下查询。用您的表名替换商店,用您的列名替换ID。
DECLARE @maxRowSize int
SET @maxRowSize =
(
SELECT SUM(DataSize) AS MaxRowSize
FROM
(
SELECT COLUMN_NAME, DATALENGTH(COLUMN_NAME) as DataSize
from information_schema.columns
where table_name = 'shop' -- enter table name only, do NOT enter the schema
) AS SCHEM
)
SELECT COUNT(Id) as NumOfRows, --optional
@maxRowSize as MaxRowBytes, --optional
COUNT(id) * @maxRowSize as MaxQueryBytes
FROM Shop -- Enter schema name if needed