在与月份对应的表空间中按月份自动进行Oracle分区

ljsrvy3e  于 2023-06-05  发布在  Oracle
关注(0)|答案(1)|浏览(199)

我需要按月份自动对表进行分区,每个分区都位于与月份对应的表空间中。我不需要循环赛。我希望每个分区都在它的表空间中。谢谢

muk1a3rh

muk1a3rh1#

正如我已经说过的,您必须使用循环调度,因为表空间必须在设计时存在。否则,Oracle无法自动创建分区。会是这样的:

CREATE TABLE MY_TABLE
(
  START_TIME  TIMESTAMP(0) NOT NULL,
  more columns
)
PARTITION BY RANGE (START_TIME) INTERVAL (INTERVAL '1' MONTH)
STORE IN (
    TS_JAN, TS_FEB, TS_MAR,
    TS_APR, TS_MAY, TS_JUN,
    TS_JUL, TS_AUG, TS_SEP,
    TS_OKT, TS_NOV, TS_DEC
)
(
  PARTITION P_INITIAL VALUES LESS THAN (TIMESTAMP '2021-01-01 00:00:00') TABLESPACE TS_JAN
);

只需确保初始分区的时间戳(例如1月1日)与正确的表空间匹配。
否则,您必须提前手动创建所有分区和表空间。

相关问题