CREATE TABLE Employee (EmpNo VARCHAR2(10) PK, Name VARCHAR2(30), DeptNo NUMBER(2))
PARTITION BY RANGE (DeptNo) (
PARTITION PART1 VALUES LESS THAN (11) TABLESPACE PART1_TS,
PARTITION PART2 VALUES LESS THAN (21) TABLESPACE PART2_TS,
PARTITION PART3 VALUES LESS THAN (31) TABLESPACE PART3_TS,
PARTITION PART4 VALUES LESS THAN (MAXVALUE) TABLESPACE PART4_TS
);
CREATE INDEX Employee_DeptNo ON Employee(DeptNo) LOCAL (
PARTITION PART1 TABLESPACE PART1_NDX_TS,
PARTITION PART2 TABLESPACE PART2_NDX_TS,
PARTITION PART3 TABLESPACE PART3_NDX_TS,
PARTITION PART4 TABLESPACE PART4_NDX_TS
);
局部索引與分區一一對應,易管理;需跨分區唯一性時用全域索引。
ALTER INDEX ... REBUILD 回收空間DBA_SEGMENTS 找出 Extents ≥ 10 的段
EXP system/mgr FILE=exp.dmp COMPRESS=Y GRANTS=Y INDEXES=Y TABLES=(T1,T2)
-- 刪除舊表
IMP system/mgr FILE=exp.dmp COMMIT=Y BUFFER=64000 FULL=Y
ALTER TABLESPACE ... COALESCE 強制合併