首页 > 代码库 > ORA-14400: inserted partition key does not map to any partition

ORA-14400: inserted partition key does not map to any partition

ORA-14400: inserted partition key does not map to any partition
数据库表已经分区,如果插入数据时出现错误提示:
ORA-14400: 插入的分区关键字超出最高合法分区关键字。
原因是因为分区已经过期
解决方法:
手工添加了一个分区,终止日期大于当前日期即可。
建表的SQL:
create table DATE
(
 ID           VARCHAR2(20) not null,
  NEWYEAR  VARCHAR2(20) not null,
  NEWMONTH  VARCHAR2(20) notnull,
)
partition by range (NEWYEAR, NEWMONTH)
(
  partition PT_2004_03 values less than (‘2004‘,‘04‘)
    tablespaceTS_LIU
    pctfree10
    pctused40
    initrans1
    maxtrans255
   storage
    (
     initial 64K
     minextents 1
     maxextents unlimited
    ),
  partition PT_2004_04 values less than (‘2004‘,‘05‘)
    tablespaceTS_LIU
    pctfree10
    pctused40
    initrans1
    maxtrans255
   storage
    (
     initial 64K
     minextents 1
     maxextents unlimited
    )
)
;
增加分区:
ALTER TABLE "DATE"
    ADD PARTITION "PT_2007_12" 
    VALUES LESS THAN  (‘2007‘, ‘12‘)
    TABLESPACE "TS_LIU"
    pctfree 10
    pctused 40
    initrans 1
    maxtrans 255
    storage
    (
     initial 64K
     minextents 1
     maxextents unlimited
    )
   
另:在建立分区表的时候应该有一个pmin区接受小于最小分区的数据
以及一个pmax区接受大于最大分区的数据,否则下次忘记加分区,又会报同样的错误

ORA-14400: inserted partition key does not map to any partition