工做中,数据库是用的oracle,ora-14400这个报错,以前也出现过,处理好了,但没有写笔记,今天又遇到了,又要去百度。因而决定总结一下,并分享出来。 数据库
遇到这个问题,首先经过查询,查看分区状况。oracle
select * from user_tab_partitions t
where t.table_name = 'Table_Name';less
Table_Name是须要查询的表名。 spa
查出来以后,你会发现,你当前所对应的表分区,没有当前时间所在的分区,接下来咱们能够经过给表增长分区来解决it
alter table Table_Name add PARTITION CT_2016_08 values less than(to_date('2016-08-01 00:00:00','yyyy-MM-dd HH24:mi:ss')) tablespace busdb; io
修改以后,问题就解决了。table
中间走了个弯路。 看了一个错误的帖子,说是执行下面的语句百度
alter table Table_Name add PARTITION CT_2016_08 values less than('2016-08-01 00:00:00') tablespace busdb; date
但执行的时候会报错。 select
因而我再从select查出来的结果分析了一下,修改为正确的方式(to_date方式),就没问题了。
一个简单的报错,记录一下,以便之后再来翻阅,若是您也遇到了一样的问题,但愿这点小经验可以帮到您。