塞尔达,wa0,硕士捐精身亡
首先是将一个数据表加入到分区表的方法:
[dbo].[sp_helper_partition_add]
@srctable nvarchar(256), 待加入的表
@desttable nvarchar(256), 目标表
@idxondest nvarchar(1024), 目标表上的索引创建语句
@partition_func_name nvarchar(256), 分区函数
@partcol nvarchar(256), 分区的列
@sonispart tinyint=1, 待加入的表是否分区
算法如下:
获取到源表的分区列的值;
在源表上加上分区列值的唯一性限制;
然后确定是否有一个分区恰好能存放这个表;如果不存在,则返回;
在源表上创建和目标表一样的索引;
现在源表和目标结构一致,源表的内容能够存在目标分区上,使用alter table switch完成分区;
删除一个分区的算法
[dbo].[sp_helper_partition_delete]
@srctable nvarchar(256), 从该表中删除分区
@idxontable nvarchar(1024), 该表上的索引创建语句
@part_func nvarchar(256), 分区函数名
@partcol nvarchar(256), 分区列
@partindex int, 待删除分区的索引
@idxispart tinyint 索引是否在另一个分区函数上分区
算法如下:
首先根据源表的表结构复制一分临时表的表结构;
获取待删除分区的边界值;
在临时表上创建限制;
在这个表上创建索引;
将指定分区使用alter switch交换到临时表上;
删除临时表
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!!
点击进行留言回复
相关文章:
-
-
-
sql某个日期是当年的第几周
/* *周一作为一周的开始 *当年的1月1号所在的周算作第一周 */ CREATE function GetWeekIndexFirstDate ( @...
[阅读全文]
-
-
数据库SQL---范式
1、数据冗余导致的问题:冗余存储、更新异常、插入异常、删除异常。 2、函数依赖:一种完整性约束。 在关系模式r(R)中,α属于R,β属于R。 1)α函数...
[阅读全文]
-
-
数据库SQL---查询
1、查询所有列 select *from emp;--*表示所有的,from emp表示从emp表中查询。 2、查询指定列 select empno,e...
[阅读全文]
-
-
-
-
网友评论