use Test
--1分区函数
CREATE PARTITION FUNCTION IDRange(int)
AS RANGE LEFT FOR VALUES
(
'99999999',
'199999999',
'299999999'
)
USE master
--2然后我们需要添加相应的文件组 .我使用的是TestData文件组.
ALTER DATABASE Test ADD FILEGROUP [TestData]
ALTER DATABASE Test
ADD FILE
(NAME = N'TestData01',FILENAME = N'E:\DATA\TestData01.ndf',SIZE = 5MB,FILEGROWTH = 5MB)
TO FILEGROUP [TestData]
GO
ALTER DATABASE Test
ADD FILE
(NAME = N'TestData02',FILENAME = N'E:\DATA\TestData02.ndf',SIZE = 5MB,FILEGROWTH = 5MB)
TO FILEGROUP [TestData]
GO
ALTER DATABASE Test
ADD FILE
(NAME = N'TestData03',FILENAME = N'E:\DATA\TestData03.ndf',SIZE = 5MB,FILEGROWTH = 5MB)
TO FILEGROUP [TestData]
--3.创建关联
--分区架构
use Test
CREATE PARTITION SCHEME IDRangeScheme
AS
PARTITION IDRange
ALL TO ([TestData])
--4. --对已经存在的表进行分区设置
--切换到分区表
ALTER TABLE AllData
ADD
PRIMARY KEY CLUSTERED(ID)
ON IDRangeScheme(ID)
GO
SELECT * FROM dbo.AllData
---如果大家希望查询此表中的相关数据,可以使用如下语句
SELECT *, $PARTITION.IDRange(ID) AS Part/*所在分区文件*/ FROM AllData