oracle中表的分区

来源:百度知道 编辑:UC知道 时间:2024/05/16 13:37:48
我有一个表table ,其中有id ,it二个字段,里面有几万条数据,现在如何将此表转化一个分区表,谢

1、将数据转存备份到另外一个表中,以防万一
create table 备份表名 as select * from 原表名;

2、重建原表,并根据需要建立分区。
create table 新表名(id 类型,it 类型)
partition by range(字段)(
partition 分区名1 value less than(值1),
partition 分区名2 value less than(值2),
...
partition 分区名n value less than(maxvalue)
);

3、交换分区或者直接导入数据到分区表
1)交换分区
alter table 新表名 exchange partition 分区名1 with table 原表名;
...
alter table 新表名 exchange partition 分区名n with table 原表名;
2)直接导入数据
insert into 新表名 select * from 原表名;

4、导入数据完成之后,如果确认没有问题。
1)删除原表:drop table 原表名 purge;
2)修改新表名:rename 新表名 to 原表名;
3)删除备份表:drop table 备份表名 purge;

---
以上,希望对你有所帮助。

http://baike.baidu.com/view/1412956.htm
借你参考

分区表?什么意思啊?
要不就这样,重新建一个表,建一个字段it!
读取该table中的it字段所有数据,存储到新建表中的it字段中。