Sql Server基础之Sql语句文件组分区函数分组方案对应分区表的简单步骤
【文件组和文件】
使用后台代码创建,可以将名字设置成动态赋值
--分组文件1
alter database TableData add filegroup group_20200726 --【1】增加文件组
alter database TableData add file --【2】增加文件
(
name = data,
filename = 'D:\file_data_20200726.ndf',
size =1MB,
filegrowth = 5MB
)
to filegroup group_20200726
--分组文件2
alter database TableData add filegroup group_20200727 --【1】增加文件组
alter database TableData add file --【2】增加文件
(
name = data,
filename = 'D:\file_data_20200727.ndf',
size =1MB,
filegrowth = 5MB
)
to filegroup group_20200727
【分区函数】
分区函数是和分区表字段有关
这里表示:如果添加的记录,添加时间值是2020-07-26,那么会往分组文件-file_data_20200726.ndf-里保存数据
如果添加的记录,添加时间值是2020-07-27,那么会往分组文件-file_data_20200727.ndf-里保存数据
这就达到了分区来保存数据,方便单文件备份数据,如果是单个整体文件,那么达到几十G不好传输保存备份
create partition function [PF_Data] (datetime) as range left for values
('2020-02-26','2020-02-27')
【分区方案】
分区方案与分区函数和文件组关联
create partition scheme PS_Data
as partition PF_Data
to ([PRIMARY],group_20200726,group_20200727)
【分区方案指定运用在那个表】
可以在表属性存储里查看分区列等分区信息
必须是首次创建表开始,如果表已经有数据了,那么可以先备份到临时表,然后重新创建表后,从临时表里将数据添加进来,这样也可以查看到分区方案的效果
insert into tableName select * from tempTableName
第一种,创建表的时候创建分区表
CREATE TABLE [dbo].[tableName](
[addTime] [datetime] NOT NULL
) on PS_Data([addTime])
第二种,对现有表设置分区方案?
有待考虑!