请问sql2005分区函数、分区架构,文件组都设好了后如何修改分区索引啊?

锐昆 2009-01-14 12:00:36
假设有一个表LogRecorder表主要字段:logID,logdatetime,logTypeID,logcontent.
(logID为主键,不重复,其余字段可能重复)

--创建分区函数:
CREATE PARTITION FUNCTION PF_RangeByHalfYear(datetime)
AS
RANGE RIGHT FOR VALUES (
'20080101', '20080701','20090101','20090701')
--创建分区文件组:
ALTER DATABASE sonweb2009 ADD FILEGROUP [FG_DownLog2008A]
ALTER DATABASE sonweb2009 ADD FILEGROUP [FG_DownLog2008B]
ALTER DATABASE sonweb2009 ADD FILEGROUP [FG_DownLog2009A]
ALTER DATABASE sonweb2009 ADD FILEGROUP [FG_DownLog2009B]
--创建分区物理文件:
ALTER DATABASE sonweb2009
ADD FILE (NAME = N'Downlog2008a',FILENAME = N'E:\sqldata\FG_Sonweb2009\Downlog2008a.ndf')
TO FILEGROUP [FG_DownLog2008A]
ALTER DATABASE sonweb2009
ADD FILE (NAME = N'Downlog2008b',FILENAME = N'E:\sqldata\FG_Sonweb2009\Downlog2008b.ndf')
TO FILEGROUP [FG_DownLog2008B]
ALTER DATABASE sonweb2009
ADD FILE (NAME = N'Downlog2009a',FILENAME = N'E:\sqldata\FG_Sonweb2009\Downlog2009a.ndf')
TO FILEGROUP [FG_DownLog2009A]
ALTER DATABASE sonweb2009
ADD FILE (NAME = N'Downlog2009b',FILENAME = N'E:\sqldata\FG_Sonweb2009\Downlog2009b.ndf')
TO FILEGROUP [FG_DownLog2009B]
--创建分区架构
CREATE PARTITION SCHEME PS_ByHalfYear
AS PARTITION PF_RangeByHalfYear TO ([FG_DownLog2008A],[FG_DownLog2008B],[FG_DownLog2009A],[FG_DownLog2009B],[PRIMARY])

问题一:
现在希望以logdatetime字段(表示日志的日期时间,非唯一)为分区依据,如何按照分区架构建立表(LogRecorder)的索引呢?
Alter TABLE [dbo].[LogRecorder] ....... 这里怎么写呢?

问题二:
另外假如我要求分区函数不是按照时间来分界,而是按照logTypeID(int类型)来分界,希望不同的类型划分到不同的区。这个时候这个表重新建立索引的语句又该如何写呢?

谢谢高手赐教~!


...全文
664 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
振乾 2010-09-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fcuandy 的回复:]
第一个问题:

先删除现在索引
drop index....

接下来将现有的表绑定到分区架构
altert 表名 with(move to 分区架构(分区列))

然后再创建索引
create index 索引名 on 表名(列)

当然,发果表中有主健,还要在将表绑定到分区架构时去掉主健约束, 绑定完成后,再alter table增加主健约束。


第二个问题
照……
[/Quote]

dding
fcuandy 2009-01-14
  • 打赏
  • 举报
回复
第一个问题:

先删除现在索引
drop index....

接下来将现有的表绑定到分区架构
altert 表名 with(move to 分区架构(分区列))

然后再创建索引
create index 索引名 on 表名(列)

当然,发果表中有主健,还要在将表绑定到分区架构时去掉主健约束, 绑定完成后,再alter table增加主健约束。


第二个问题
照你按datetime分区的步聚,新建按int分区的函数和架构。
dawugui 2009-01-14
  • 打赏
  • 举报
回复
SQL Server 2005 中的分区表和索引(原理剖析)
http://hi.baidu.com/topalert/blog/item/1c83ff87d5b3742dc75cc33f.html
http://hi.baidu.com/topalert/blog/item/ecf0a0384b32d02496ddd839.html
http://hi.baidu.com/topalert/blog/item/1f62761b58b4b91e8718bf3a.html
http://hi.baidu.com/topalert/blog/item/b29e351f4ecf6cf2e1fe0b3a.html

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧