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) not
null,
)
partition by range (NEWYEAR, NEWMONTH)
(
  partition PT_2004_03 values less than (‘2004‘,
‘04‘)
    tablespace
TS_LIU
    pctfree
10
    pctused
40
    initrans
1
    maxtrans
255
   
storage
    (
     
initial 64K
     
minextents 1
     
maxextents unlimited
    ),
  partition PT_2004_04 values less than (‘2004‘,
‘05‘)
    tablespace
TS_LIU
    pctfree
10
    pctused
40
    initrans
1
    maxtrans
255
   
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区接受大于最大分区的数据,否则下次忘记加分区,又会报同样的错误

时间: 2024-10-11 13:15:23

ORA-14400: inserted partition key does not map to any partition的相关文章

What is a partition key?

DynamoDB supports two types of primary keys: Partition key: A simple primary key, composed of one attribute known as the partition key. Attributes in DynamoDB are similar in many ways to fields or columns in other database systems. Partition key and

【转】由2个值组合成key的STL map排序问题

转自:http://blog.csdn.net/pathuang68/article/details/7526305 某网友问:"map中怎么设置多个key值进行排序?" 在C++中,map是典型的关联容器或者叫映射容器(associative container),其中的每一个元素都是由key-value这样成对出现的内容组成的,比如学号和学生之类具有一一对应关系的情形,学号可以作为key,学生对象可以作为key所对应的value.很显然这种情况下的key只有一个值,但是,在实际工作

cassandra的primary key, partition key, cluster key,

https://stackoverflow.com/questions/24949676/difference-between-partition-key-composite-key-and-clustering-key-in-cassandra primary key是一个宏观概念,用于从表中取出数据,primary key由多个column组合而成. create table stackoverflow ( key text PRIMARY KEY, data text ); 如上面的语句所

java 多种判断key是否在map中存在的方法

java 中有时候会遇到判断传过来的map里是否包含了指定的key,我目前只发现两种办法,如果有其他方法欢迎补充 我添加上去: HashMap map = new HashMap(); map.put("1", "value1"); map.put("2", "value2"); Iterator keys = map.keySet().iterator(); while(keys.hasNext()){ String key

Partition table的switch条件2:Partition 的隐式Check约束 和Nullability

Partition column允许为Null,Null是最小值,存在于Partition Number=1的partition中. Any data with a NULL in the partition column will reside in the leftmost partition. NULL is considered smaller than the minimum value of the data type’s values. Partition Function 定义了

允许Key重复的Map - IdentityHashMap

在使用map的时候,大家肯定会想到key-value,key用于检索value的内容.在正常情况下,可以不允许重复:但是其实重复在java中分为2中情况,一是内存地址重复,另一个是不同的地址但内容相等,而IdentityHashMap用于后者,即内容相等. 更详细的解释如下:此类利用哈希表实现 Map 接口,比较键(和值)时使用引用相等性代替对象相等性.换句话说,在 IdentityHashMap 中,当且仅当 (k1==k2) 时,才认为两个键 k1 和 k2 相等(在正常 Map 实现(如

封装一个按Key排序的Map工具

Map是集合的存放顺序是按哈希值定的,有时候不是我们需要的,当想要一个按自己规定顺序存放顺序,可以用LinkedHashMap,这里自己把LinkedHashMap封装了一次 package test.com.reflect; import java.util.Arrays; import java.util.Comparator; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; im

java中的不同的key类型从map中获取不同的value值

protected <V> V getValFromMap(Map<String, Object> headers, String name, Class<V> type) { Object value = headers.get(name); if (value == null) { return null; } if (!type.isAssignableFrom(value.getClass())) { if (logger.isWarnEnabled()) {

ORA-14402: updating partition key column would cause a partition change

[说明]:提示此类错误说明表进行了分区,修改分区字段所引起的错误. [解决]:1.查询系统字典表 SELECT * FROM DBA_TABLES T WHERE T.TABLE_NAME = '表名称'; 如果出现ORA-00942则需要判断当前是否有权限. 此时可以改为SELECT * FROM USER_TABLES T WHERE T.TABLE_NAME = '表名称'; 2.修改ROW_MOVEMENT字段值  ROW_MOVEMENT关闭时的策略值为DISABLE,开启时为ENAB