Sql Server 分区之后增加新的分区
随着时间的推移,你可能会希望为已分区的表添加额外的分区(例如,可以为每一个新年创建一个新的分区)。要增加一个新的分区,可以使用ALTER PARTITION SCHEME和ALTER PARTITION FUNCTION命令。
要想为一个既有的分区函数创建新的分区,首先必须准备一个文件组来保存新分区的数据(新的或者已有的文件组都行)。第一步是使用ALTER PARTITION SCHEME来指定下一个分区文件组。
ALTER PARTITION SCHEME的语法如下:
- ALTER PARTITION SCHEME partition_scheme_name
- NEXT USED [ filegroup_name ]
表4-20详细描述了此命令的参数。
表4-20 ALTER PARTITION SCHEME参数
参数 |
描述 |
partition_scheme_name |
这个参数指定了需 要修改的分区方案名 |
NEXT USED [filegroup_name] |
NEXT USED关键字把下一个 文件组列入使用队列,让任何新的分区使用 |
在增加了下一个文件组的引用之后,使用ALTER PARTITION FUNCTION来创建(分割)新的分区(移除/合并分区也一样)。ALTER PARTITION FUNCTION的语法如下:
- ALTER PARTITION FUNCTION partition_function_name()
- {
- SPLIT RANGE ( boundary_value )
- | MERGE RANGE ( boundary_value )
- }
表4-21详细描述了此命令的参数。
表4-21 ALTER PARTITION FUNCTION参数
参数 |
描述 |
partition_function_name |
这个参数指定了要从中 添加或移除分区的分区函数名 |
SPLIT RANGE ( boundary_value ) | MERGE RANGE ( boundary_value ) |
SPLIT RANGE通过定义一 个新的边界值来创建一个 新的分区。MERGE RANGE 用于移除一个既有的分区 |
这个示例演示如何创建(分割)一个新的分区。第一步就是新建一个为新分区所用的文件组。在本例中,使用PRIMARY文件组:
- ALTER PARTITION SCHEME HitDateRangeScheme
- NEXT USED [PRIMARY]
接着,修改分区函数来创建新的分区,定义边界为2009年1月1日:
- ALTER PARTITION FUNCTION HitDateRange ()
- SPLIT RANGE ('1/1/2009')
在新分区创建后,插入一个新行来测试新分区:
- INSERT Sales.WebSiteHits
- (WebSitePage, HitDate)
- VALUES ('Sales Page', '3/4/2009')
使用$PARTITION来查询表:
- SELECT HitDate,
- $PARTITION.HitDateRange (HitDate) Partition
- FROM Sales.WebSiteHits
这个查询显示新插入的行已经存储到了新的分区中(分区号5):
- HitDate Partition
- 2000-03-04 00:00:00.000 1
- 2006-10-02 00:00:00.000 2
- 2007-10-22 00:00:00.000 3
- 2008-05-09 00:00:00.000 4
- 2009-03-04 00:00:00.000 5
解析
在这个技巧的示例中,使用ALTER PARTITION SCHEME和NEXT USED关键字来修改HitDateRange- Scheme。NEXT USED关键字把下一个文件组加入队列,供新的分区使用。默认的PRIMARY文件组被选为新分区的目标存储区:
- ALTER PARTITION SCHEME HitDateRangeScheme
- NEXT USED [PRIMARY]
然后使用ALTER PARTITION FUNCTION和SPLIT RANGE来加入一个新的分区边界:
- ALTER PARTITION FUNCTION HitDateRange ()
- SPLIT RANGE ('1/1/2006')
添加新的分区只需要使用一个新值,其实是使用原来的边界类型(LEFT或RIGHT)把一个既有的分区范围分成了2份。一次分离只可以使用一次SPLIT RANGE--不可以在一条语句中增加多个分区。
这个示例的分割增加了一个新的分区#5,如表4-22所示。
表4-22 新的分区布局
位 置 # |
最小的时间 |
最大的时间 |
1 |
最小允许的时间 |
1/1/2006 00:00:00 |
2 |
1/1/2006 00:00:01 |
1/1/2007 00:00:00 |
3 |
1/1/2007 00:00:01 |
1/1/2008 00:00:00 |
4 |
1/1/2008 00:00:01 |
1/1/2009 00:00:00 |
5 |
1/1/2009 00:00:01 |
最大允许的时间 |
向表Sales.WebSiteHits插入了新的一行,使用了分区函数。然后执行查询来查看每行所属的分区,并确认了新行插入到了第5个分区中。
转载于:https://www.cnblogs.com/xirilingfeng/p/3402335.html
Sql Server 分区之后增加新的分区相关推荐
- 如何在计算机中增加硬盘分区,win10系统电脑下增加新磁盘分区的操作方法
有关win10系统电脑下增加新磁盘分区的操作方法想必大家有所耳闻.但是能够对win10系统电脑下增加新磁盘分区进行实际操作的人却不多.其实解决win10系统电脑下增加新磁盘分区的问题也不是难事,小编这 ...
- RK3566 android11 增加新的分区,恢复出厂数据不会清除
客户要求保存一段数据,可写入读取,恢复出厂后数据也不会被删除.增加private分区,专门给客户app使用. 增加分区有俩种方式,俩种方式不能同时使用. 1.通过升级工具烧录镜像的方式: 2.reco ...
- suse linux增加新磁盘分区,Virtualbox中Linux添加新磁盘并创建分区
引言:我们常常在使用系统的时候突然发现,哎呦~~~我们的磁盘空间不够用啦!我遇到常见的就是数据库数据暴增,预留的空间没有啦,只好新添加磁盘,在VB虚拟机上就可以实现,往往苦于没有图文并茂的好资料,下面 ...
- sql server分布式事务解决方案[新事务不能登记到指定的事务处理器中错误]
< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> 适用环境 操作系统:wi ...
- 使用一下SQL Server 2008中的新日期函数
在我们开始讨论SQL Server 2008中新的日期数据类型之前,先来回顾一下SQL Server 2005中以及更老版本中提供的两种日期数据类型,这些旧的数据类型是DATETIME和SMALLDA ...
- SQL Server Denali:SSDT新功能解读
T-SQL编辑器 T-SQL编辑器支持在线和离线的数据库上写和执行Transact-SQL代码.编辑器提供一个丰富的编辑和导航环境,支持Microsot的自动完成工具IntelliSense.调式和声 ...
- linux 怎么把新硬盘分区,linux添加新硬盘分区
一.添加硬盘 1.选择"VM"----"setting"并打开,将光标定位在hard Disk这一选项,然后点击下方的Add按钮 2.点击next,执行下一个步 ...
- XP下安装SQL SERVER企业版的一个新方法(转载)
原帖地址:http://topic.csdn.net/T/20060314/14/4613478.html ------------------ 近日,因为参与一个项目开发,该项目要求只能用正版软件. ...
- SQL Server 2019 (15.x) 新特性概要
2019.11.4 SQL Server 2019发布,趁热打铁了解下2019的新特性.下面整理一些个人感觉重要的或者工作上能用到的新特性,有删减,完整版参考 SQL Server 2019 中的新增 ...
- sql server 快照_添加新文章,删除文章,更改快照文件夹路径和SQL Server复制中的数据筛选器行
sql server 快照 In the last articles, we have learned Configuring Snapshot and Transactional SQL Serve ...
最新文章
- Blender 3.0机器人硬面建模材质渲染全流程学习课程
- 贪心 双指针----Codeforces Round #727 (Div.2) D. PriceFixed
- 十天精通CSS3学习笔记 part2
- java面试难吗_面试两个月,整理了今年的最新java面试题,你看行吗?
- [JSConf EU 2018] 大脑控制 Javascript
- Knative Service 之流量灰度和版本管理
- uni-app 实现微信授权登录
- 会玩!抖音上线拉春联特效 “拜个抖音年”活动参与人数超65万
- python中pow_如何在python中找到pow(a,b,c)的反向?
- 【Python】Python中的日志级别
- 只有1kb的清理软件_1kb病毒专杀工具下载
- java打飞机游戏完整代码
- Nim理论初探——编程之美1.12
- 【AAC 系列一】Android 应用架构新时代来临!
- vue3.0 ts版项目配置axios
- 2012服务器优化工具,Windows server 2012服务器安全加固与web环境配置优化
- 微信连WiFi关注公众号流程更新 解决ios微信扫描二维码不关注就能上网的问题
- 大学MOOC现代礼仪试题用哪个搜题软件好?里面的题库难吗?
- 某pdf转word v6.3.0.2算法分析
- linux切换用户时报错 bash: /home/book/.bashrc: 权限不够 bash-4.2$
热门文章
- 从Android到React Native开发(三、自定义原生控件支持)
- 算法----其他排序
- win7/64位下python2.7、easy_install安装经验
- 神秘的 shadow-dom 浅析
- 【经验总结】js关闭当前页面/关闭当前窗口(兼容所有浏览器)
- 手把手教你做iOS的soap应用(webservice)
- Ubuntu 安装配置 ROR3
- 从团购的“占便宜”心态说起
- springboot生成包含特定数字_关于Spring Boot 这可能是全网最好的知识点总结
- 自媒体各大平台收益对比_自媒体推广平台都有哪些?