; script - db TestDB; , - .
script,
;
.
TestTable;
3 "Live"
, 3 , sys.partitions
THen ,
sys.partitions, , .
, , .
USE master;
GO
IF EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'TestDB')
DROP DATABASE TestDB;
GO
CREATE DATABASE TestDB
ON PRIMARY
(NAME='TestDB_Part1',
FILENAME=
'c:\sqldata\TestDB_Part1.mdf',
SIZE=3,
MAXSIZE=100,
FILEGROWTH=1 ),
FILEGROUP TestDB_Part2
(NAME = 'TestDB_Part2',
FILENAME =
'c:\sqldata\TestDB_Part2.ndf',
SIZE =3,
MAXSIZE=100,
FILEGROWTH=1 );
GO
USE TestDB;
GO
CREATE PARTITION FUNCTION TestDB_PartitionRange (Bit)
AS RANGE right FOR
VALUES (1);
GO
CREATE PARTITION SCHEME TestDB_PartitionScheme
AS PARTITION TestDB_PartitionRange
TO ([PRIMARY], TestDB_Part2);
GO
CREATE TABLE TestTable
(Archived Bit NOT NULL,
Date DATETIME)
ON TestDB_PartitionScheme (Archived);
GO
INSERT INTO TestTable (Archived, Date)
VALUES (0,'2010-01-01');
INSERT INTO TestTable (Archived, Date)
VALUES (0,'2010-02-01');
INSERT INTO TestTable (Archived, Date)
VALUES (0,'2010-03-01');
GO
SELECT * FROM TestTable;
SELECT * FROM sys.partitions
WHERE OBJECT_NAME(OBJECT_ID)='TestTable';
update TestTable
set Archived = 1 where Date = '2010-03-01'
SELECT * FROM sys.partitions
WHERE OBJECT_NAME(OBJECT_ID)='TestTable';
use master
go
drop database testdb