sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo separar una partición de una tabla y adjuntarla a otra en Oracle?

alter table exchange partition 

es la respuesta. Este comando intercambia el segmento de una partición con el segmento de una tabla. Es a la velocidad de la luz porque solo hace algunos intercambios de referencia. Por lo tanto, necesita algunas tablas temporales, porque AFAIK no puede intercambiarlas directamente.

Algo como:

create table tmp_table(same columns);
Add partition p_2011 in table ARCH_TABLE;

ALTER TABLE CURR_TABLE EXCHANGE PARTITION P_2011 WITH TABLE tmp_table;
ALTER TABLE ARCH_TABLE EXCHANGE PARTITION P_2011 WITH TABLE tmp_table;

Pruebe su código antes de ejecutarlo.