SQL SERVER2005 分区表几何倍数提高网站性能[2]-添加、合并、删除,查询分区

前一篇文章SQL SERVER2005 分区表几何倍数提高网站性能 已经讲到了如何去为一张表创建分区,今天这里要说的就是再创建好分区后,如何对分区进行修改,比如添加范围,合并范围,查询分布之类的。废话不说,代码才是硬道理

1.首先要改变分区范围,就得给它一个位置吧,要把它放哪里吧,所以必须先给它一个存在的位置使用关键字next used

添加一个组

ALTER DATABASE [D] ADD FILEGROUP [GF2]
ALTER DATABASE [WSBOOK] ADD FILE ( NAME = N'GF2', FILENAME = N'E:\E\E1\DGF2.ndf' , SIZE = 5MB , FILEGROWTH = 10% )
 
TO FILEGROUP [GF2]

为架构添加范围

ALTER PARTITION SCHEME [D_PARTITION_SHEME]
NEXT USED GF2

这句话就是让下一个分区使用和现在已经存在的分区GF2分区中,这样此分区就存储了五段partition的数据

2.添加一个范围

ALTER PARTITION FUNCTION [D_PARTITIONFUNC]()
SPLIT RANGE (
'700000')  

也可以合并一个范围

ALTER PARTITION FUNCTION [D_PARTITIONFUNC]() MERGE RANGE ('400000'

3.查询分区分布

SELECT * FROM SYS.PARTITIONS WHERE OBJECT_ID = OBJECT_ID('dbo.B')

4.删除分区

DROP TABLE dbo.Ws_BookChapterUrl
DROP PARTITION SCHEME [D_PARTITION_SHEME]
DROP PARTITION FUNCTION [D_PARTITIONFUNC]

 

这篇文章文章以及前一篇文章讲的也就是分区的一个部分-范围分区,这也是最常见的模式,其实还有其他的分区模式,这里就不敷衍了,有兴趣的自己去找资料。

现在有个问题,提出来跟大家探讨探讨,虽然分区可以使一张表存储上百G的数据,可是难道SQL SERVER 2005就没有数据瓶颈了,就是一张表顶多能存多少数据,如果达到那个瓶颈,分区是不是可以解决它呢?最好的办法又是什么呢?

 

posted @ 2009-06-26 10:14  倾城绝厉  阅读(905)  评论(1编辑  收藏  举报