我在外键上创建索引:
CREATE INDEX FK_SOME_TABLE ON SOME_TABLE(F_SOME_ID)
LOCAL
LOGGING
TABLESPACE SOME_TABLESPACE
NOPARALLEL;
它正常工作。
我尝试在主键上创建唯一索引,但是每次我都会遇到错误 “遗漏了左括号”,我更加关于“遗漏左括号”的一些问题,但我无法得到解决方案。
CREATE UNIQUE INDEX PK_SOME_TABLE ON SOME_TABLE
(SOME_ID)
TABLESPACE SOME_TABLESPACE
LOGGING
GLOBAL PARTITION BY RANGE (SOME_ID)
INTERVAL (1000)
(
PARTITION P_1 VALUES LESS THAN (1000)
)
NOPARALLEL;
可能我在一个重要的地方省略了括号,但我真的不知道在哪里。 你能给我一些建议吗?
答案 0 :(得分:0)
当我们使用创建UNIQUE INDEX
到GLOBAL PARTITION BY RANGE
时,我们只能使用以下选项:
COMPRESS,
NOCMPRESS,
PCTFREE,
INITRANS,
MAXTRANS,
STORAGE,
TABLESPACE,
PARALLEL,
RECOVERABLE,
UNRECOVERABLE,
LOGGING,
NOLOGGING,
LOCAL,
GLOBAL
所以我们看到,我们不能使用INTERVAL
,但这不是我犯的最后一个错误。如果我们使用GLOBAL PARTITION
,我们必须为所有列指定MAXVALUE
,因此我们必须添加值小于MAXVALUE
的新分区。
我之前提到的create unique
索引的正确陈述:
CREATE UNIQUE INDEX PK_SOME_TABLE ON SOME_TABLE
(SOME_ID)
LOGGING
TABLESPACE SOME_TABLESPACE
GLOBAL PARTITION BY RANGE (SOME_ID)
(
PARTITION P_1 VALUES LESS THAN (1000)
PARTITION P_2 VALUES LESS THAB (MAXVALUE)
)
NOPARALLEL;