无法创建索引错误:带参数的ORA -00600 [12811] [2083824]

时间:2017-09-23 17:33:09

标签: oracle

当我尝试创建索引时,我得到了带有参数ORA -00600的内部错误[12811] [2083824]。我该如何解决?

ALTER TABLE "UTEST_PARAMETERS_LIST" MODIFY "SOURCE_NAME" NUMBER(11);
ALTER TABLE "UTEST_PARAMETERS_LIST" MODIFY "SOURCE_NAME" DEFAULT 0;`
CREATE INDEX "D178F60FBEDDDCCBA2B5E71814AC80" ON "UTEST_PARAMETERS_LIST" ("SOURCE_NAME");

版本:Oracle Database 12c企业版12.1.0.2.0版 - 64位生产

  

ORA-12811:PARALLEL_MIN_SERVERS必须小于或等于   PARALLEL_MAX_SERVERS

在我的情况下,这些参数等于= 8,两者

1 个答案:

答案 0 :(得分:0)

这可能是Oracle处理默认值的方式的问题。在某些情况下,Oracle仅将默认值存储在元数据中,并且不会将值存储在每一行中。这可以提高性能,但也有很多与之相关的错误。

尽量避免仅限元数据的默认设置。我无法重现您的错误,因此我不知道究竟对您有什么用处。在设置默认值并将列设置为NOT NULL之前,要尝试编写所有值。

--Try different variations of this:
UPDATE UTEST_PARAMETERS_LIST SET SOURCE_NAME = 0 WHERE SOURCE_NAME IS NULL;
COMMIT;
ALTER TABLE "UTEST_PARAMETERS_LIST" MODIFY "SOURCE_NAME" NOT NULL;

--Then run the original commands.
ALTER TABLE "UTEST_PARAMETERS_LIST" MODIFY "SOURCE_NAME" NUMBER(11);
ALTER TABLE "UTEST_PARAMETERS_LIST" MODIFY "SOURCE_NAME" DEFAULT 0;
CREATE INDEX "D178F60FBEDDDCCBA2B5E71814AC80" ON "UTEST_PARAMETERS_LIST" ("SOURCE_NAME");