ITPUB??ì3
12月微软Hyper-V虚拟化沙龙主题征集
ITPUB论坛 » Oracle开发 » 给分区表添加分区

标题: 给分区表添加分区
离线 lvbomr
中级会员



精华贴数 0
个人空间 0
技术积分 732 (2640)
社区积分 0 (519040)
注册日期 2005-7-17
论坛徽章:1
ITPUB新首页上线纪念徽章     
      

发表于 2008-9-22 11:23 
给分区表添加分区

partition P200812 values less than(200901) tablespace pin00,   
    partition P_LAST  values less than(MAXVALUE) tablespace pin00


想在分区P200812和P_LAST 之间加一个分区,请问如何加,多谢!


只看该作者    顶部
离线 1add1


精华贴数 0
个人空间 0
技术积分 388 (5340)
社区积分 1860 (657)
注册日期 2008-7-22
论坛徽章:24
生肖徽章2007版:鸡2008北京奥运纪念徽章:体操2008北京奥运纪念徽章:射击2008北京奥运纪念徽章:柔道2008北京奥运纪念徽章:拳击2008北京奥运纪念徽章:乒乓球
2008北京奥运纪念徽章:跆拳道生肖徽章2007版:虎生肖徽章2007版:马每日论坛发贴之星生肖徽章2007版:龙2008年新春纪念徽章

发表于 2008-9-22 11:36 
alter table XXX add partition p*** values less than(***);


__________________
------------------------------------------------
工作是为了更好的生活!
------------------------------------------------
只看该作者    顶部
离线 jlliuyi
中级会员



精华贴数 0
个人空间 0
技术积分 1655 (1038)
社区积分 41 (5496)
注册日期 2006-10-8
论坛徽章:3
生肖徽章2007版:蛇生肖徽章2007版:鸡ITPUB新首页上线纪念徽章   
      

发表于 2008-9-22 13:53 
可是如果当前两个分区已经建立完成后,第三个分区的值在前两个之间时,创建是不成功的,第三个分区的值必须大于第二个
除非重建表,然后按照分区范围从小到大来建分区


只看该作者    顶部
离线 guoq.lee
天凉了


来自 大连
精华贴数 0
个人空间 0
技术积分 762 (2635)
社区积分 55 (4891)
注册日期 2006-11-2
论坛徽章:20
生肖徽章2007版:鸡     
      

发表于 2008-9-22 14:35 
alter table test_part split partition P_LAST
at (201001)
into(partition P20080912,partition P_LAST)


__________________
I believe I can fly,I believe I can touch the sky,I believe!
只看该作者    顶部
离线 lvbomr
中级会员



精华贴数 0
个人空间 0
技术积分 732 (2640)
社区积分 0 (519040)
注册日期 2005-7-17
论坛徽章:1
ITPUB新首页上线纪念徽章     
      

发表于 2008-9-22 16:37 
CREATE TABLE CP_TEST_T
(
  POID_DB              INTEGER,
  BILLING_MONTH        VARCHAR2(6),
  PRICE_TYPE           INTEGER
)
partition by range(billing_month)
(
    partition P200812 values less than(200901) tablespace pin00,      
    partition P_LAST  values less than(MAXVALUE) tablespace pin00
);


insert into CP_TEST_T values (1,200801,1);
insert into CP_TEST_T values (2,200802,1);
insert into CP_TEST_T values (3,200803,1);
insert into CP_TEST_T values (4,200804,1);
insert into CP_TEST_T values (5,200805,1);
insert into CP_TEST_T values (6,200806,1);
insert into CP_TEST_T values (7,200807,1);
insert into CP_TEST_T values (8,200808,1);
insert into CP_TEST_T values (9,200809,1);
insert into CP_TEST_T values (10,200810,1);
insert into CP_TEST_T values (11,200811,1);
insert into CP_TEST_T values (12,200812,1);
insert into CP_TEST_T values (13,200901,1);
insert into CP_TEST_T values (14,200902,1);
insert into CP_TEST_T values (15,200903,1);


alter table CP_TEST_T split partition P_LAST
at (200901)
into(partition P200812,partition P_LAST);

报错:“ERROR at line 1:
ORA-14080: partition cannot be split along the specified high bound”,多谢!


只看该作者    顶部
离线 junsansi
无名扫把


来自 bj
精华贴数 8
个人空间 7925
技术积分 8974 (137)
社区积分 1137 (926)
注册日期 2006-7-17
论坛徽章:93
现任管理团队成员2008北京奥运纪念徽章:举重2008北京奥运纪念徽章:现代五项2008北京奥运纪念徽章:皮划艇静水2008北京奥运纪念徽章:水球2008北京奥运纪念徽章:拳击
生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠生肖徽章2007版:鼠

发表于 2008-9-22 17:04 
PHP code:


SQL
alter table cp_test_t split partition P_LAST at(200902into(partition p200901,partition p_last);

 

Table altered



SQL
select partition_name,high_value from user_tab_partitions where table_name='CP_TEST_T';

 

PARTITION_NAME                 HIGH_VALUE

------------------------------ --------------------------------------------------------------------------------

P200812                        '200901'

P200901                        '200902'

P_LAST                         MAXVALUE

--




__________________
我为PUB做贡献: Itpub徽章统计与分析的小工具 出手救市,长期收狗收老鼠:):)~~
============================================
http://www.5ienet.com我爱我佳
扫地不过是我表面上的工作,我真正的身份其实是无名老僧------------------手里那根扫把~~~~
只看该作者    顶部
离线 guoq.lee
天凉了


来自 大连
精华贴数 0
个人空间 0
技术积分 762 (2635)
社区积分 55 (4891)
注册日期 2006-11-2
论坛徽章:20
生肖徽章2007版:鸡     
      

发表于 2008-9-22 17:09 
你不是要新加个分区吗?

alter table CP_TEST_T split partition P_LAST
at (200901)  新加分区的范围值
into(partition P200812,partition P_LAST); 新加分区的名字


__________________
I believe I can fly,I believe I can touch the sky,I believe!
只看该作者    顶部
离线 lvbomr
中级会员



精华贴数 0
个人空间 0
技术积分 732 (2640)
社区积分 0 (519040)
注册日期 2005-7-17
论坛徽章:1
ITPUB新首页上线纪念徽章     
      

发表于 2008-9-22 17:14 
这样P200812 分区的hash值变了,想让P200812分区hash值不变,加一个分区P200901,hash值为200901


只看该作者    顶部
离线 lvbomr
中级会员



精华贴数 0
个人空间 0
技术积分 732 (2640)
社区积分 0 (519040)
注册日期 2005-7-17
论坛徽章:1
ITPUB新首页上线纪念徽章     
      

发表于 2008-9-22 17:28 
非常感谢!


只看该作者    顶部
离线 20013011094
火舞冰峰


来自 辽宁
精华贴数 0
个人空间 0
技术积分 984 (1918)
社区积分 4 (18742)
注册日期 2006-7-10
论坛徽章:1
授权会员     
      

发表于 2008-9-23 01:28 
范围分区可以合并-merge   分裂-split   可以与表结果相同的常规表做数据交换(重建索引)--exchange

[ 本帖最后由 20013011094 于 2008-9-23 01:34 编辑 ]


__________________
青春不是年华,而是心境;
青春不是桃面、丹唇、柔膝,
而是深沉的意志,恢弘的想象,炙热的恋情;
青春是生命的深泉在涌流。
青春气贯长虹,勇锐盖过怯懦,进取压倒苟安。
只看该作者    顶部
相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问