【发布时间】:2017-08-07 04:15:49
【问题描述】:
我正在尝试将子分区添加到现有分区,但出现此错误:
Oracle 错误:ORA-14158
错误描述:子分区描述过多
错误原因:CREATE TABLE 或 CREATE INDEX 包含太多子分区描述;最大子分区数为 1048575。
行动:将子分区的数量减少到不超过 1024K-1。
如果我尝试向现有的子分区添加一个子分区,它适用于此查询:
ALTER TABLE table_name MODIFY PARTITION partition_name ADD
SUBPARTITION subpartition_name VALUES LESS THAN (TO_DATE('01-03-2018' , 'DD-MM-YYYY'));
但是如果我尝试向这个现有分区添加多个子分区,则会出现上述错误:
这是它的查询:
ALTER TABLE table_name MODIFY PARTITION partition_name ADD
SUBPARTITION subpartition_name1 VALUES LESS THAN (TO_DATE('01-03-2018' , 'DD-MM-YYYY')),
SUBPARTITION subpartition_name2 VALUES LESS THAN (TO_DATE('01-04-2018' , 'DD-MM-YYYY'));
即使我没有创建超过 1024K-1 个子分区,我仍然收到太多子分区描述错误。
这里是创建表语句:
**CREATE TABLE HTL_ALLOTMENT_TRACE (
allotmentTraceID NUMBER(19) NOT NULL,
organizationID NUMBER(19) NOT NULL,
locationID NUMBER(10) NOT NULL,
traceBusinessDate DATE NOT NULL
)
PARTITION BY LIST (organizationID)
SUBPARTITION BY RANGE (traceBusinessDate)
(
PARTITION HALMTTRC_1 VALUES (1)
)**
如果有人有建议,请告诉我。
【问题讨论】:
-
请提供您的 CREATE TABLE 语句。
-
CREATE TABLE HTL_ALLOTMENT_TRACE ( allotmentTraceID NUMBER(19) NOT NULL, organizationID NUMBER(19) NOT NULL, locationID NUMBER(10) NOT NULL, traceBusinessDate DATE NOT NULL ) 按列表分区 (organizationID) 按范围分区(traceBusinessDate) (PARTITION HALMTTRC_1 VALUES (1))
-
请编辑您的问题而不是发表评论 - 这很难阅读。
-
我已经编辑了这个问题。请立即检查。
标签: oracle partitioning partition