在Oracle中为本地索引定义表空间

时间:2013-05-10 16:44:30

标签: oracle indexing

当我们生成脚本来为分区表创建索引时,我们目前有类似的东西:

CREATE INDEX "SCHEMA"."INDEX_NAME" ON "SCHEMA"."TABLE_NAME" (
  "COLUMN_NAME"
)
LOCAL
(
  PARTITION "P1" TABLESPACE "INDEX_TABLESPACE_NAME",
  PARTITION "P2" TABLESPACE "INDEX_TABLESPACE_NAME",
  PARTITION "PMAX" TABLESPACE "INDEX_TABLESPACE_NAME"
);

我们正考虑将此更改为:

CREATE INDEX "SCHEMA"."INDEX_NAME" ON "SCHEMA"."TABLE_NAME" (
  "COLUMN_NAME"
)
LOCAL;

在这种情况下,我如何定义索引应该放在哪个表空间?表的所​​有分区都将放在同一个表空间中,表的所有索引都应该放在一个(不同的)表空间中。

1 个答案:

答案 0 :(得分:3)

据我所知,您只需为索引定义一个默认表空间:

CREATE INDEX
  "SCHEMA"."INDEX_NAME"
ON
  "SCHEMA"."TABLE_NAME" (
    "COLUMN_NAME")
TABLESPACE
  MY_INDEX_TABLESPACE
LOCAL;

您知道将表和索引段存储在不同的表空间中没有性能优势,对吗?