专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »数据库 » sqlserver分区表:SQLServer 通用的分区增加和删除的算法 »正文

sqlserver分区表:SQLServer 通用的分区增加和删除的算法

来源: 发布时间:星期日, 2009年9月6日 浏览:76次 评论:0
首先是将个数据表加入到分区表思路方法:
[dbo].[SP_Helper_Partition_Add]
@SrcTable nvarchar(256), 待加入
@DestTable nvarchar(256), 目标表
@idxOnDest nvarchar(1024), 目标表上索引创建语句
@Partition_func_name nvarchar(256), 分区
@PartCol nvarchar(256), 分区
@SonIsPart tiny=1 待加入表是否分区
算法如下:
获取到源表分区列值;
在源表上加上分区列值性限制;
然后确定是否有个分区恰好能存放这个表;如果不存在则返回;
在源表上创建和目标表索引;
现在源表和目标结构源表内容能够存在目标分区上使用alter table switch完成分区;
删除个分区算法
[dbo].[SP_Helper_Partition_Delete]
@SrcTable nvarchar(256), 从该表中删除分区
@IdxOnTable nvarchar(1024), 该表上索引创建语句
@Part_func nvarchar(256), 分区
@PartCol nvarchar(256), 分区列
@PartIndex , 待删除分区索引
@IdxIsPart tiny 索引是否在另个分区上分区
算法如下:
首先根据源表表结构复制分临时表表结构;
获取待删除分区边界值;
在临时表上创建限制;
在这个表上创建索引;
将指定分区使用alter switch交换到临时表上;
删除临时表
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: