--创建一个分区函数(默认为左边界)
CREATE PARTITION FUNCTION PARTFUNC1(INT)
AS RANGE
FOR VALUES(1000,2000,3000,4000,5000);

--创建一个分区方案
CREATE PARTITION SCHEME PARTSCHEME1
AS PARTITION PARTFUNC1
ALL TO ([PRIMARY]);

--创建一个分区表
CREATE TABLE PARTTABLE1
(
col1 int,
col2 int,
col3 int
) on partscheme1(col1);

--插入测试记录
insert into parttable1 values(10,10,10)
insert into parttable1 values(999,10,10)
insert into parttable1 values(1000,10,10)
insert into parttable1 values(2000,10,10)
insert into parttable1 values(3000,10,10)
insert into parttable1 values(5000,10,10)
insert into parttable1 values(6000,10,10)
insert into parttable1 values(7000,10,10)
insert into parttable1 values(9000,10,10)
insert into parttable1 values(993,10,10)
insert into parttable1 values(6000,10,10)
insert into parttable1 values(5000,10,10)
insert into parttable1 values(7000,10,10)
insert into parttable1 values(6600,10,10)
insert into parttable1 values(8200,10,10)
insert into parttable1 values(8900,10,10)
insert into parttable1 values(17000,10,10)
insert into parttable1 values(61600,10,10)
insert into parttable1 values(81200,10,10)
insert into parttable1 values(18900,10,10)
insert into parttable1 values(10,10,10)
insert into parttable1 values(999,10,10)
insert into parttable1 values(1000,10,10)
insert into parttable1 values(2000,10,10)
insert into parttable1 values(3000,10,10)
insert into parttable1 values(5000,10,10)
insert into parttable1 values(6000,10,10)
insert into parttable1 values(7000,10,10)
insert into parttable1 values(9000,10,10)
insert into parttable1 values(1993,10,10)
insert into parttable1 values(16000,10,10)
insert into parttable1 values(15000,10,10)
insert into parttable1 values(17000,10,10)
insert into parttable1 values(16600,10,10)
insert into parttable1 values(18200,10,10)
insert into parttable1 values(15000,10,10)
insert into parttable1 values(17000,10,10)
insert into parttable1 values(16000,10,10)
insert into parttable1 values(12000,10,10)
insert into parttable1 values(11000,10,10)

--查看数据在分区的分布情况
select o.name,p.partition_number,p.rows
from sys.objects o join sys.partitions p on o.object_id=p.object_id
where o.type='u' and o.name='parttable1' and p.index_id=0

--查看更多细节
select $partition.partfunc1(col1) as partition,
 col1 as [data],col2,col3
from parttable1
order by partition

--查看分区的配置情况
select f.name,f.type_desc,f.fanout,p.boundary_id,p.value
from sys.partition_functions f join sys.partition_range_values p on f.function_id=p.function_id

--合并分区,将1000<X<=2000和2000<X<=3000的合并
alter partition function partfunc1()
merge range(2000)

--拆分分区,将1000<X<=3000的分区,以2000为界进行拆分
alter partition function partfunc1()
split range(2000)

--拆分分区之前如果分区方案指定的文件组数据小于分区函数中的分区数据,则要修改分区方案
alter partition scheme partscheme1
next used [filegroup_name]

--存档分区,创建一个存档表
create table parttable2
(
 col1 int,
 col2 int,
 col3 int
) on partscheme1(col1)

--将分区1的数据存档
alter table parttable1
switch partition 1
to parttable2 partition 1

--检查数据是否归档
select $partition.partfunc1(col1) as partition,* from parttable1
order by partition
--where $partition.partfunc1(col1)=1

select * from parttable2

--将存档的数据重新加载
alter table parttable2
switch partition 1
to parttable1 partition 1

--如果将非分区表的数据转移到分区表呢?

SQL Server 2005 分区表创建实例的更多相关文章

  1. SQL Server 2005 分区表实践——分区切换

    本文演示了 SQL Server 2005 分区表分区切换的三种形式: 1. 切换分区表的一个分区到普通数据表中:Partition to Table: 2. 切换普通表数据到分区表的一个分区中:Ta ...

  2. SQL Server COM 组件创建实例失败

    SQL Server COM 组件创建实例失败   SQL2008数据库总会出现从 IClassFactory 为 CLSID 为 {17BCA6E8-A95D-497E-B2F9-AF6AA4759 ...

  3. SQL SERVER 2005中同义词实例

    From : http://www.cnblogs.com/jackyrong/archive/2006/11/15/561287.html 在SQL SERVER 2005中,终于出现了同义词了,大 ...

  4. SQL Server 2005 中的分区表和索引

    SQL Server 2005 中的分区表和索引 SQL Server 2005          69(共 83)对本文的评价是有帮助 - 评价此主题   发布日期 : 3/24/2005 | 更新 ...

  5. 安装 SQL Server 2005 的硬件和软件要求(官方全面)

    SQL Server 2005 安装要求 本主题介绍了安装 SQL Server 205 的硬件和软件要求,以及查看安装文档的说明. 硬件和软件要求(32 位和 64 位) 访问 SQL Server ...

  6. [SQL SERVER 2005]数据库差异备份及还原

    因为之前遇到还原差异备份,最开始遇到SQLServer报错:”无法还原日志备份或差异备份,因为没有文件可用于前滚“.查阅很多资料后,终于得到解决.收集整理成这篇随笔. 问题原因:出现这种错误绝大多数是 ...

  7. SQL Server 2005中的分区表

    记录笔记: 转自 猪八戒学做网站 SQL Server 2005中的分区表(一):什么是分区表?为什么要用分区表?如何创建分区表? SQL Server 2005中的分区表(二):如何添加.查询.修改 ...

  8. SQL Server 2005中的分区表(六):将已分区表转换成普通表(转)

    我的俄罗斯名叫作“不折腾不舒服斯基”,所以,不将分区表好好折腾一下,我就是不舒服. 在前面,我们介绍过怎么样直接创建一个分区表,也介绍过怎么将一个普通表转换成一个分区表.那么,这两种方式创建的表有什么 ...

  9. 如何创建和还原SQL Server 2005数据库?

    在还原SQL Server 2005数据库文件之前,建议先把要还原的数据库文件复制粘贴到某个盘的根目录下,这样便于一会儿找到相关的文件,比如C盘. 先打开SQL Server 2005的Microso ...

随机推荐

  1. mysql实现高效率随机取数据

    从数据库中(mysql)随机获取几条数据很简单,但是如果一个表的数据基数很大,比如一千万,从一千万中随机产生10条数据,那就相当慢了,如果同时一百个人访问网站,处理这些个进程,对于一般的服务器来说,肯 ...

  2. Java学习第五天

    一.内存分析 内存分析:指数据的存储,理解程序执行过程,运行期的行为,不是编译期. 分类 栈: 方法栈存储方法的局部变量|形参后进先出 堆: 对象堆存储new的对象散列存储 方法区: 特殊的堆,类方法 ...

  3. 【转】C++析构函数为什么要为虚函数

    注:本文内容来源于zhice163博文,感谢作者的整理. 1.为什么基类的析构函数是虚函数? 在实现多态时,当用基类操作派生类,在析构时防止只析构基类而不析构派生类的状况发生. 下面转自网络:源地址  ...

  4. LabVIEW串口通信的一个例子-串口"示波器"

    1.程序界面:<ignore_js_op> 功能介绍:左边上方串口接收区,下方为串口字符发送区.右方为一个波形图表,在程序内部每次将串口发送过来的数据,以f%格式化,显示在波形图表上.按钮 ...

  5. Core Java Volume I — 3.8. Control Flow

    3.8. Control FlowJava, like any programming language, supports both conditional statements and loops ...

  6. 搭建 hexo,在执行 hexo deploy 后,出现 error deployer not found:github 的错误

    hexo 更新到3.0之后,deploy的type 的github需要改成git 改了之后执行npm install hexo-deployer-git --save 然后再部署试试 官网说明: ht ...

  7. C++,栈与队列

    1,头文件 #include <stack> #include <queue> 2,声明 stack<int> stackTest; queue<int> ...

  8. 精妙无比 8款HTML5动画实例及源码

    1.jQuery垂直带小图标菜单导航插件 今天我们要来分享一款jQuery菜单插件,这款jQuery菜单是垂直的样式,鼠标滑过菜单项时会出现一个背景,菜单项的右侧也会出现一个小箭头.另外值得注意的是, ...

  9. java List 排序 Collections.sort()

    用Collections.sort方法对list排序有两种方法  第一种是list中的对象实现Comparable接口,如下: /** * 根据order对User排序 */ public class ...

  10. smartUpload组件批量下载

    public class BatchDownloadServlet extends HttpServlet { public void doGet(HttpServletRequest request ...