SQL Server 2008中的行压缩浅析
2010-10-01 09:00:21 来源:WEB开发网GO
CREATE TABLE [NoNCompressed Table2]
(id int, FName varchar(100), LName varchar(100))
declare @n int
set @n=0
while @n<=10000
begin
insert into [NoNCompressed Table2] values
(1,'Adam','Smith'),(2,'Maria','carter'),(3,'Walter','zenegger')
set @n=@n+1
end
GO
使用下面的事务SQL语句来查询这个表所使用的空间。
EXEC sp_spaceused [NONCompressed Table2]
结果
name,rows,reserved,data,index_size,unused
NoNCompressed Table,30003 ,968 KB,944 KB,8 KB,16 KB
使用ALTER TABLE语句对这个表添加数据压缩特性,如下所示。
ALTER TABLE [NoNCompressed Table2]
REBUILD WITH (DATA_COMPRESSION = ROW );
现在让我们使用下面的事务SQL语句来查询这个表所使用的空间。
EXEC sp_spaceused [NONCompressed Table2]
结果
name,rows,reserved,data,index_size,unused
NoNCompressed Table2,30003 ,592 KB,560 KB,8 KB,24 KB
有时你需要创建一个使用数据压缩的索引。让我们比较具有非压缩聚集和非聚集索引的表的大小与具有压缩聚集和非聚集索引的表的大小。
使用下面的事务SQL语句来创建一个没有压缩而有大量数据的表:
/****** Object: Table [dbo].[NoNCompressed Table3] Script Date: 05/27/2009 02:24:23 ******/
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[NoNCompressed Table3]') AND type in (N'U'))
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接