SQL Server 2008企业版和开发版引入了对表、索引和相应分区的页级和行级压缩。对于非聚集索引,使用CREATE INDEX和ALTER INDEX来实现压缩。指定值为NONE、ROW或PAGE的DATA COMPRESSION选项。
USE AdventureWorks
GO
CREATE NONCLUSTERED INDEX NCI_SalesOrderDetail_CarrierTrackingNumber
ON sales.SalesOrderDetail (CarrierTrackingNumber)
WITH(DATA_COMPRESSION=PAGE)
可以在创建后使用ALTER TABLE来修改压缩级别。例如,使用ALTER INDEX将压缩级别更改为行级压缩:
USE AdventureWorks
GO
ALTER INDEX NCI_SalesOrderDetail_CarrierTrackingNumber
ON sales.SalesOrderDetail
REBUILD
WITH (DATA_COMPRESSION=ROW)