--Oracle9i以上版本,利用在线重定义功能
CREATE TABLE T (ID NUMBER PRIMARY KEY, order_no varchar2(40), order_date DATE);
--unable to create INITIAL extent for segment in tablespace hmit_hyt
/*
有2个方法:
1。增大现在表空间数据文件的大小.alter database datafile 'XXX' resize XXXXM;
2。给这个表空间增加数据文件:alter tablespace XXX add datafile 'XXX' size XXXM autoextend on next XXM maxsize XXXXM;
*/
alter tablespace hmit_hyt add DATAFILE 'D:\app\hmit\oradata\mydata\HMIT_HYT_1.DBF' size 500M autoextend on next 50M maxsize 4096M;
INSERT INTO t SELECT ROWNUM , product_no, sys_time FROM warehouse_inventory;
--检查重定义的合理性
EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE('hmit_hyt', 'T', DBMS_REDEFINITION.CONS_USE_PK);--PL/SQL procedure successfully completed
CREATE TABLE T_NEW (ID NUMBER PRIMARY KEY, order_no varchar2(40), order_date DATE) PARTITION BY RANGE (order_date)
(PARTITION P1 VALUES LESS THAN (TO_DATE('2009-7-1', 'YYYY-MM-DD')),
PARTITION P2 VALUES LESS THAN (TO_DATE('2010-3-1', 'YYYY-MM-DD')),
PARTITION P4 VALUES LESS THAN (MAXVALUE));
--如果分区表和原表列名相同,可以用如下方式进行:
BEGIN
CREATE TABLE T (ID NUMBER PRIMARY KEY, order_no varchar2(40), order_date DATE);
--unable to create INITIAL extent for segment in tablespace hmit_hyt
/*
有2个方法:
1。增大现在表空间数据文件的大小.alter database datafile 'XXX' resize XXXXM;
2。给这个表空间增加数据文件:alter tablespace XXX add datafile 'XXX' size XXXM autoextend on next XXM maxsize XXXXM;
*/
alter tablespace hmit_hyt add DATAFILE 'D:\app\hmit\oradata\mydata\HMIT_HYT_1.DBF' size 500M autoextend on next 50M maxsize 4096M;
INSERT INTO t SELECT ROWNUM , product_no, sys_time FROM warehouse_inventory;
--检查重定义的合理性
EXEC DBMS_REDEFINITION.CAN_REDEF_TABLE('hmit_hyt', 'T', DBMS_REDEFINITION.CONS_USE_PK);--PL/SQL procedure successfully completed
CREATE TABLE T_NEW (ID NUMBER PRIMARY KEY, order_no varchar2(40), order_date DATE) PARTITION BY RANGE (order_date)
(PARTITION P1 VALUES LESS THAN (TO_DATE('2009-7-1', 'YYYY-MM-DD')),
PARTITION P2 VALUES LESS THAN (TO_DATE('2010-3-1', 'YYYY-MM-DD')),
PARTITION P4 VALUES LESS THAN (MAXVALUE));
--如果分区表和原表列名相同,可以用如下方式进行:
BEGIN