估计具有可变长度行的表

可以估计带有 VARCHAR 或 NVARCHAR 数据类型列和可变长度行的表的大小。

当表包含一个或多个 VARCHAR 或 NVARCHAR 列时,它的行长度可变。这些可变长度给计算带来了不确定性。 必须根据您对数据的理解确定一个估算每个 VARCHAR 列的典型大小的公式,并在估计表的大小时使用上述公式计算的值。
要点: 当数据库服务器为可变大小的行分配空间时,如果可用空间无法容纳具有最大大小的附加行,那么认为页已满。
要估计行的长度可变的表的大小,必须根据对数据的理解进行以下估计,并在它们中选择值:
  • 表的最大大小,根据所有 VARCHAR 或 NVARCHAR 列所允许的最大宽度进行计算
  • 表的预期大小,根据每个 VARCHAR 或 NVARCHAR 列的典型宽度进行计算

要估算数据页面的最大数量:

  1. 要计算 rowsize,应将所有列的宽度的最大值加在一起。
  2. 将此值用作 rowsize,并按照估计具有固定长度行的表中所述进行计算。生成的值称为 maxsize

要估算数据页面的预计数量:

  1. 要计算 rowsize,应将每个长度可变的列的典型宽度加在一起。 建议您使用列中最频繁出现的宽度作为该列的典型宽度。 如果您无权访问数据,或不需要使用这些宽度制成表格,您可以选择使用最大宽度的一定比例,如 2/3 (.67)。
  2. 将此值用作 rowsize,并按照估计具有固定长度行的表中所述进行计算。生成的值称为 projsize