快速业务通道

SQL Server2005 表分区三步曲

作者 佚名技术 来源 数据库编程 浏览 发布时间 2012-03-22
区函数)。

(三):对一个表进行分区

   定义好一个分区架构后,就可以着手创建一个分区表了。只需要在表创建指令中添加一个"ON"语句,用来指定分区架构以及应用该架构的表列。因为分区架构已经识别了分区函数,所以不需要再指定分区函数了。

create table tb_partition1

(id int identity,

dt datetime,

[name]as ''Name''+ltrim(ID),

constraint pk_tbpartition1 primary key clustered(ID,dt)on my_psch(dt)

)on my_psch(dt)

go

create table tb_partition2

(id int identity,

dt datetime,

[name]as ''Name''+ltrim(ID),

constraint pk_tbpartition2 primary key clustered(ID,dt)on my_psch(dt)

)on my_psch(dt)
--为此表填充数

declare @dt datetime

set @dt=''2007-01-01''

while @dt<=''2009-10-01''

   begin

     insert tb_partition1 select @dt

     set @dt=dateadd(dd,1,@dt)

   end

--查询表的分区狀况 Select * from sys.partitions

Where object_id In

(Select object_id From sys.tables Where name In(''tb_partition1'',''tb_partition2''))

---- 现在我们可以看一下我们刚才插入的行都分布在哪个Partition
select *,$partition.my_pfun(dt) from tb_partition1

--切換分區

--切換前

select * from tb_partition1

select * from tb_partition2

----切換分區tb_partition1-->tb_partition2

Alter Table tb_partition1

Switch Partition 2 To tb_partition2 Partition 2

go

select * from tb_partition1

select * from tb_partition2

修改三步曲
1 添加一个文件组到数据库(可選)
2 修改分区Scheme
3 修改分区函数

--1 添加一个文件组到数据库
--2 修改分区Scheme
--把大於/12/31的分区改分为2个分区
--3 修改分区函数
Alter Partition Function My_pfun()

Alter Partition Scheme my_psch

Next Used [Primary]

go

Split Range(''2008/12/31'')

Go

--把小于2008/12/31的两分区合并

Alter Partition Function My_PFun()

Merge Range(''2007/12/31'')

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号