sp_estimated_rowsize_reduction_for_vardecimal (Transact-SQL)

Calcula la reducción del tamaño medio de las filas si se habilita el formato de almacenamiento vardecimal en una tabla. Utilice este número para calcular la reducción general del tamaño de la tabla. Puesto que el muestreo estadístico se usa para calcular la reducción media del tamaño de fila, se debe considerar como una mera aproximación. Es posible que, en contadas ocasiones, el tamaño de fila aumente después de habilitar el formato de almacenamiento vardecimal. El formato de almacenamiento vardecimal sólo está disponible en las ediciones Enterprise, Developer y Evaluation de SQL Server, a partir del Service Pack 2 de SQL Server 2005.

[!NOTA]

Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. En su lugar, use el tipo de compresión ROW y PAGE. Para obtener más información, vea Crear tablas e índices comprimidos. Para obtener información sobre los efectos de la compresión en el tamaño de tablas e índices, vea sp_estimate_data_compression_savings (Transact-SQL).

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

sp_estimated_rowsize_reduction_for_vardecimal [ [ @table_name = ] 'table'] [;]

Argumentos

  • [ @table= ] 'table'
    Es el nombre de tres partes de la tabla para el que se debe cambiar el formato de almacenamiento. table es nvarchar(776).

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

El siguiente conjunto de resultados se devuelve para proporcionar información acerca del tamaño de tabla actual y aproximado.

Nombre de columna

Tipo de datos

Descripción

avg_rowlen_fixed_format

decimal (12, 2)

Representa la longitud de la fila en formato de almacenamiento decimal fijo.

avg_rowlen_vardecimal_format

decimal (12, 2)

Representa el tamaño de fila medio cuando se utiliza el formato de almacenamiento vardecimal.

row_count

int

Número de filas de la tabla.

Notas

Use sp_estimated_rowsize_reduction_for_vardecimal para calcular el ahorro que se obtiene al habilitar una tabla para el formato de almacenamiento vardecimal. Por ejemplo, si el tamaño medio de una fila se puede reducir un 40 por ciento, potencialmente también se puede reducir el tamaño de la tabla en un 40 por ciento. Es posible que no consiga ahorrar espacio, ya que dependerá del factor de relleno y del tamaño de la fila. Por ejemplo, si una fila tiene 8.000 bytes de longitud y reduce su tamaño en un 40 por ciento, sólo podrá seguir incluyendo una fila en una página de datos, con lo que no obtendrá ningún ahorro.

Si los resultados de sp_estimated_rowsize_reduction_for_vardecimal indican que la tabla va a crecer, eso quiere decir que muchas filas de la tabla utilizan prácticamente toda la precisión en los tipos de datos decimales, y que la adición de la mínima sobrecarga necesaria para el formato de almacenamiento vardecimal es mayor que el ahorro del formato de almacenamiento vardecimal. En este caso excepcional, no habilite el formato de almacenamiento vardecimal.

Si una tabla está habilitada para el formato de almacenamiento vardecimal, use sp_estimated_rowsize_reduction_for_vardecimal para calcular el tamaño medio de la fila, en caso de que se deshabilite el formato de almacenamiento vardecimal.

Permisos

Requiere el permiso CONTROL en la tabla.

Ejemplos

El ejemplo siguiente calcula la reducción del tamaño de fila si se comprime la tabla Production.WorkOrderRouting de la base de datos AdventureWorks.

USE AdventureWorks
GO
EXEC sp_estimated_rowsize_reduction_for_vardecimal 'Production.WorkOrderRouting' ;
GO