• [Oracle]ORA-14400:插入的分区关键字未映射到任何分区


    今天在使用测试库的时候发生ORA-14400:inserted partition key does not map to any partition

    解决过程:

      经过百度,发现出现ORA-14400是表分区出现问题。  

      1.确定该表是否已经添加了表分区。    

    select partition_name,high_value from user_tab_partitions t where table_name='table_name';

      2.查询表分区绑定的字段名称。   

    select * from user_part_key_columns t where name='table_name';

      3.查看当前表分区的具体情况

    select * from user_tab_partitions t where table_name='table_name';

      4.查询表分区绑定的字段的最大值。注:此处的table_name应为当前表对应的原始库中的源表。

    select max(key_column) from table_name t;

      5.将查询到的表分区绑定字段的最大值插入到当前表中进行测试,发现报错。

    insert into table_name(table_column1,table_column2,......,key_column) values(value1,value2,......,key_value);

      6.经过以上环节确定源表中出现错误数据,并且由于错误数据的时间跨度大于当前分区的范围,导致ORA-14400错误的出现,但是由于该数据必须保留,因此对表分区进行扩展。

      7.扩展当前表分区以保证范围大于绑定字段的最大值。

    复制代码
    alter table  table_name add partition part_key_column_029 values less than (to_date('2029-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS','NLS_CALENDAR=GREGORIAN'))
    
           tablespace tablespace_name
    
           pctfree 10
    
            initrans 1
    
           maxtrans255,
    
    ......,
    
    alter table  table_name add partition part_key_column_049 values less than (to_date('2049-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS','NLS_CALENDAR=GREGORIAN'))
           tablespace tablespace_name        pctfree 10        initrans 1        maxtrans255,
    复制代码
  • 相关阅读:
    Cross-Site Scripting(XSS)简介
    nginx查看安装了哪些模块
    Win7系统修改hosts文件不能保存的解决方法
    firefox怎么修改tls协议号
    在Nginx中部署基于IP的虚拟主机
    openssl生成ssl证书
    给kali linux2.0装一个中文输入法
    tenda u1 usb wireless device install driver for kali linux kernal Debian 4.3.3-7kali2 (2016-01-27) x86_64 GNU/Linux
    python2.7.x的字符串编码到底什么鬼?(中文和英文的处理)
    fswatch rsync配置使用 rsync 传输大量细小文件
  • 原文地址:https://www.cnblogs.com/masonlu/p/8781714.html
Copyright © 2020-2023  润新知