压缩nvarchar(500)

时间:2017-05-29 19:59:49

标签: sql-server sql-server-2008 compression

我们每天都有超过新的100,000个表(SQL Server 2008)。

表有10个字段,但其中一个字段最重 - 保存产品500chars的描述。现在它的设置为nvarchar(500)。 保存在该字段中的数据不仅包括英语,还可以是俄语,希伯来语,阿拉伯语,中文等。

我们无法摆脱这个领域,有没有办法压缩内容并使用比nvarchar(500)更小的尺寸

1 个答案:

答案 0 :(得分:0)

您可以压缩整个表(聚簇索引)或索引本身。方法如下:

ALTER TABLE Production.TransactionHistory REBUILD PARTITION = ALL  
WITH (DATA_COMPRESSION = PAGE); 

ALTER TABLE Production.TransactionHistory REBUILD PARTITION = ALL  
WITH (DATA_COMPRESSION = ROW);

您可以使用此https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-estimate-data-compression-savings-transact-sql来估算使用ROW或PAGE压缩保存的空间。