对数据库进行评估后,需要对大表进行分区,由以下步骤可完成整个分区过程。

1.建立数据库;

2.新增文件组;

3.为文件组新增文件;

4.建立分区函数;

5.建立分区架构;

6.新增表格(引用分区架构)。

以下是详细测试代码。

 

--STEP1:CREATE DATABASE建立数据库
USE MASTER
IF EXISTS (SELECT NAME FROM master.dbo.sysdatabases WHERE name='Demo')
DROP DATABASE Demo
CREATE DATABASE Demo

--STEP2:ADD FILEGROUP 增加文件组
ALTER DATABASE Demo ADD FILEGROUP MASTERFG1
ALTER DATABASE Demo ADD FILEGROUP MASTERFG2
ALTER DATABASE Demo ADD FILEGROUP MASTERFG3
ALTER DATABASE Demo ADD FILEGROUP MASTERFG4

--STEP3:add physical location for the filegroups 新增文件并与文件组关联
ALTER DATABASE Demo ADD FILE (NAME='MASTERF1',FILENAME='G:\TestDataBase\FileGroup\MASTERF1.NDF') TO FILEGROUP MASTERFG1
ALTER DATABASE Demo ADD FILE (NAME='MASTERF2',FILENAME='G:\TestDataBase\FileGroup\MASTERF2.NDF') TO FILEGROUP MASTERFG2
ALTER DATABASE Demo ADD FILE (NAME='MASTERF3',FILENAME='G:\TestDataBase\FileGroup\MASTERF3.NDF') TO FILEGROUP MASTERFG3
ALTER DATABASE Demo ADD FILE (NAME='MASTERF4',FILENAME='G:\TestDataBase\FileGroup\MASTERF4.NDF') TO FILEGROUP MASTERFG4

--STEP4:create partition function for the table 建立分区函数
CREATE PARTITION FUNCTION MASTERPF(datetime)
AS RANGE RIGHT
FOR VALUES (N'2008-04-01 00:00:00', N'2008-07-01 00:00:00', N'2008-10-01 00:00:00')
--drop PARTITION FUNCTION MASTERPF'2008/01/01',

--STEP5:create partition scheme 建立分区架构
CREATE PARTITION SCHEME MASTERPS
AS PARTITION MASTERPF TO (MASTERFG1,MASTERFG2,MASTERFG3,MASTERFG4)
--DROP PARTITION SCHEME MASTERPS

--STEP6:create table by using the scheme 根据分区架构新建表格
CREATE TABLE [dbo].[TestMaster](
 [AutoId] [bigint] IDENTITY(1,1) NOT NULL,
 [Sn] [varchar](30) NOT NULL,
 [StartTime] [datetime] NOT NULL,
 [TestTime] [int] NOT NULL
)
 ON MASTERPS(StartTime) --此处特别注意,不是primary

--STEP7:Fill the data table 往数据库中新增数据,查看数据库属性,可看到primary大小不变,而filegroup文件增大
INSERT INTO TestMaster
SELECT * FROM  tblMaster

posted on 2008-11-05 15:17  phyllis  阅读(1244)  评论(0编辑  收藏  举报