SQL2005 分区表主键的问题

stdoomer 2010-06-28 01:43:05
昨天用SQL2005建立分区方案和分区函数后发现一个问题,就是我建这个表是要主键的,而我用来分割的字段却不是主键,在这种情况下要怎么处理!
例如我建一个表
create table (
dh char(10),
kh char(20),
dj dec (14,2),
bh int,
rq char(10)
)

其中这里面dh是主键,而我是用rq来判断做分割的!在这种情况下建立分区表的时候总是提示出错!!

哪位高手能够帮我解决一下,还有就是建立分区表的时候,关于索引方面的用法是怎么用的!谢谢……
...全文
150 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
SQL_Hhy 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sql_hhy 的回复:]

SQL code
2008转到2000的步骤
1. 生成for 2000版本的数据库脚本
2008 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 生成脚本
-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库
-- 勾选"为所选数据库中的所有对象编写脚本"
-……
[/Quote]
不好意思 搞错了
SQL_Hhy 2010-06-28
  • 打赏
  • 举报
回复
2008转到2000的步骤 
1. 生成for 2000版本的数据库脚本
2008 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 生成脚本
-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库
-- 勾选"为所选数据库中的所有对象编写脚本"
-- 在接下来的"选择脚本选项"中, 将”编写创建数据库的脚本”设为True,找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"
-- 其他选项根据需要设置
-- 最后把脚本保存到一个 .sql 脚本文件

2. 在2000中创建目标数据库
在查询分析器(或2008的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库
jwdream2008 2010-06-28
  • 打赏
  • 举报
回复
参阅:http://blog.csdn.net/Sky_666/archive/2010/03/22/5403596.aspx
jwdream2008 2010-06-28
  • 打赏
  • 举报
回复
一般普通表的特性——有主键,同时这个主键还是聚集索引。前面说过,分区表是以某个字段为分区条件,所以,除了这个字段以外的其他字段,是不能创建聚集索引的。因此,要想将普通表转换成分区表,就必须要先删除聚集索引,然后再创建一个新的聚集索引,在该聚集索引中使用分区方案。
永生天地 2010-06-28
  • 打赏
  • 举报
回复
联机丛书似乎这样写过
分割的字段必须是主键 或者主键的一部分
jwdream2008 2010-06-28
  • 打赏
  • 举报
回复
把dh修改为非聚簇索引!
Sharon_liu 2010-06-28
  • 打赏
  • 举报
回复
帮顶一下

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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