1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

简捷的Oracle增加表分区研究

2022-11-24 | 数据库 | 1818ip | 584°c
A+ A-

Oracle增加表分区(add partition)是常用的Oracle分区常用的操作。下面就简单的介绍下Oracle增加表分区的知识要点。

增加表分区适应于所有的分区形式,其语法是alter table tbname add partition …..

但是,需要注意对于像list,range这种存在范围值的分区,所要增加的分区值必须要大于当前分区中的最大值(如果当前存在maxvalue或default的分区,add partition会报错,这种情况只能使用split,后面会讲到),hash分区则无此限制。

例如:

JSSWEB>createtablet_partition_range(idnumber,namevarchar2(50)) 
  • partitionbyrange(id)( partitiont_range_p1valueslessthan(10)tablespacetbspart01,
  • partitiont_range_p2valueslessthan(20)tablespacetbspart02, partitiont_range_p3valueslessthan(30)tablespacetbspart03
  • );
  • 表已创建。

    JSSWEB>altertablet_partition_range 
  • addpartitiont_range_p4valueslessthan(40);
  • 表已更改。 Hash和list的语法与上类似,这里不再举例。

    注意:

    1、对于hash分区,当你执行add partition操作的时候,oracle会自动选择一个分区,并重新分配部分记录到新建的分区,这也意味着有可能带来一些IO操作。

    2、执行alter table时未指定update indexes子句: 如果是range/list分区,其local索引和global索引不会受影响; 如果是hash分区,新加分区及有数据移动的分区的local索引和glocal索引会被置为unuseable,需要重新编译。

    3、复合分区完全适用上述所述规则。

    本文就Oracle增加表分区来自[Svn中文网]转发请保留本站地址:http://www.svn8.com/sql/Oracle/2009111312912.html

    本文来源:1818IP

    本文地址:https://www.1818ip.com/post/11477.html

    免责声明:本文由用户上传,如有侵权请联系删除!

    发表评论

    必填

    选填

    选填

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。