ITPub博客

首页 > 数据库 > SQL Server > SQL SERVER2005分区表创建SQL

SQL SERVER2005分区表创建SQL

原创 SQL Server 作者:xxdxxdxxd 时间:2007-01-01 18:40:04 0 删除 编辑
Saw this function from other book, here is an example, save it in case[@more@]

--创建分区表之前,请在新建数据前添加数据库文件和文件组(文件组数>=分区数)
--创建分区函数(有三个范围会产生四个分区)
CREATE PARTITION FUNCTION FiveYearDateRangePFN(datetime)
AS
RANGE LEFT FOR VALUES (
'20061031 23:59:59.997',
'20061130 23:59:59.997',
'20061231 23:59:59.997')

--删除PARTITION FUNCTION
--DROP PARTITION FUNCTION FiveYearDateRangePFN


--分区映射到文件组的方案('200610'代表文件组,文件组的个数不得少于分区的个数,文件组包括数据文件)
CREATE PARTITION SCHEME [FiveYearDateRangePScheme]
AS
PARTITION FiveYearDateRangePFN TO
('200610','200611','200612','200701')

--删除SCHEME
--DROP PARTITION SCHEME [FiveYearDateRangePScheme]

--创建分区表
CREATE TABLE PARTITIONTABLE (P_NAME VARCHAR(10),BIRTHDAY DATETIME)
ON FiveYearDateRangePScheme(BIRTHDAY)

--插入测试数据
INSERt INTO PARTITIONTABLE values ('a','2006-5-1')

INSERt INTO PARTITIONTABLE values ('b','2006-8-1')

INSERt INTO PARTITIONTABLE values ('c','2006-10-1')

INSERt INTO PARTITIONTABLE values ('d','2006-11-1')

INSERt INTO PARTITIONTABLE values ('e','2006-12-1')

INSERt INTO PARTITIONTABLE values ('f','2007-5-1')

--查看数据是否写到相应的分区
select $partition.FiveYearDateRangePFN(BIRTHDAY) as PARTITIONT_ID,BIRTHDAY,* from PARTITIONTABLE


--创建分区索引
create index PARTITION_INDEX ON PARTITIONTABLE(BIRTHDAY) ON FiveYearDateRangePScheme(BIRTHDAY)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/1697933/viewspace-887835/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2008-09-15

  • 博文量
    56
  • 访问量
    510867