分割时分割分区出错

问题描述 投票:0回答:1

我有一个分区表,其中创建期间的定义为

  PARTITION  BY RANGE (CREATED_DT)
(
PARTITION p2016
   VALUES LESS THAN (TO_DATE('01-JAN-2016','dd-mon-yyyy')),   
PARTITION p2017
   VALUES LESS THAN (TO_DATE('01-JAN-2017','dd-mon-yyyy')),  
PARTITION p2018
   VALUES LESS THAN (TO_DATE('01-JAN-2018','dd-mon-yyyy')),
PARTITION p2019
   VALUES LESS THAN (TO_DATE('01-JAN-2019','dd-mon-yyyy')),
PARTITION p 
    VALUES LESS THAN (MAXVALUE)   
)

现在我想将p2016分为3个分区,在其中我发出以下命令:

ALTER TABLE BKP_COST_EVENT SPLIT PARTITION p2016 INTO
( PARTITION p14 VALUES LESS THAN (TO_DATE('01-JAN-2015','dd-MON-yyyy')),
  PARTITION p13 VALUES LESS THAN (TO_DATE('01-JAN-2014','dd-MON-yyyy')),
  PARTITION p2016_1 );

但是我收到以下错误:

Error report -
ORA-14080: partition cannot be split along the specified high bound
14080. 00000 -  "partition cannot be split along the specified high bound"
*Cause:    User attempted to split a partition along a bound which
           either collates higher than that of the partition to be split or
           lower than that of a partition immediately preceding the one
           to be split
*Action:   Ensure that the bound along which a partition is to be split
           collates lower than that of the partition to be split and
           higher that that of a partition immediately preceding the one
           to be split

我在做什么错以及如何纠正?

oracle oracle12c partition
1个回答
0
投票

更改ALTER TABLE中给定分区的顺序:

ALTER TABLE BKP_COST_EVENT SPLIT PARTITION p2016 INTO
( PARTITION p13 VALUES LESS THAN (TO_DATE('01-JAN-2014','dd-MON-yyyy')),
  PARTITION p14 VALUES LESS THAN (TO_DATE('01-JAN-2015','dd-MON-yyyy')),
  PARTITION p2016_1 );

db<>fiddle here

© www.soinside.com 2019 - 2024. All rights reserved.