我的表格包含以下列:
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错误:ORA-14400插入的分区键不映射到任何 划分 14400. 00000 - “插入的分区键不映射到任何分区”
*原因:尝试将记录插入到Range或Composite中 范围对象,具有超出的连锁分区键 最后一个分区的连接分区绑定列表-OR- 尝试将记录插入到List对象中 与指定的文字值不匹配的分区键 对于任何分区。 *行动:不要插入钥匙。或者,添加一个能够接受的分区 键,或将与键匹配的值添加到分区规范
我做错了什么?
更新
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)');
答案 0 :(得分:1)
专栏" foo"和" id"是整数类型,不需要在插入上添加它们周围的单个刻度。不确定这是否会导致您的具体问题,但它无法提供帮助。
insert into table (foo,id,date,F) values(1,4,'01.01.2016','aa');
您可能还试图插入超出分区范围的值。我已经看到过这种情况发生在日期范围之前。但除非您发布表格定义,否则我们无法回答这个问题。