2016-03-04 197 views
0

我有表具有以下colums:ORA-14400: - 「插入分區鍵沒有映射到任何分區」

foo integer default 0 
'ID', 'INTEGER' 
'date','DATE' 
'F','VARCHAR2(20 CHAR)' 

我嘗試插入以下值:

insert into table (foo,id,date,F) values('1','4','01.01.2016','aa'); 

並且出現以下錯誤:

SQL-error: ORA-14400 inserted partition key does not map to any partition 14400. 00000 - "inserted partition key does not map to any partition"

*Cause: An attempt was made to insert a record into, a Range or Composite Range object, with a concatenated partition key that is beyond the concatenated partition bound list of the last partition -OR- An attempt was made to insert a record into a List object with a partition key that did not match the literal values specified for any of the partitions. *Action: Do not insert the key. Or, add a partition capable of accepting the key, Or add values matching the key to a partition specification

我做錯了什麼?

UPDATE:

call meta_ddl.create_table ('table1','create table table1 (foo integer default 0) $#TABLEOPTIONS#$'); 
call meta_ddl.add_column ('table1','ID', 'INTEGER'); 
call meta_ddl.add_column_with_default('table1','DATE','DATE', 'SYSDATE', 1); 
call meta_ddl.add_column ('table1','F','VARCHAR2(20 CHAR)'); 
+3

推測,您無法設置分區來保存您試圖插入表中的值。但是由於問題缺少如何分區表的細節,您必須自己調查一下,或者使用完整的表格描述(包括分區子句)更新您的問題。 – Boneist

+0

請將相關表格的完整DDL(CREATE語句)添加到您的問題中。 – Codo

+0

@Codo我已更新 – Ronald

回答

1

列 「foo」 和 「ID」 是整數類型,不需要添加單蜱他們周圍的刀片。不知道這是否會導致您的具體問題,但它不能幫助。

insert into table (foo,id,date,F) values(1,4,'01.01.2016','aa'); 

您也可能試圖插入超出分區範圍的值。我以前見過這種情況發生在日期範圍之內。但是我們不能回答,除非你發佈表定義。

+0

這不是問題。我已經更新了這個問題 – Ronald