好像不行.其实重建表很容易,先RENAME当前表,然后建立分区表,再把数据倒入新表中后删除旧表

解决方案 »

  1.   

    可以查一下oracle的联机帮助
    alter table add_range_partition_clause::=
    就是用来完成这个功能的
      

  2.   

    可以实现ALTER TABLE "表名" 
        ADD PARTITION "分区名"  
        VALUES LESS THAN  (43010299999999)  --分区的范围
      

  3.   

    不行.
    数据在insert时才会存在于分区上直接建分区,分区上不会有数据的
      

  4.   

    create table .......... as select .....
    先将原表改名,然后把分区的语句在create table时加上。即可
      

  5.   

    I am thinking whether it is possible to do as bellow:
    1. export the original table
    2. drop the original table 
    3. create the partitition table with the same table name and column name .
    4. import the original table with option ignore = Y  I have no idea whether the last step will be success as I don't have experience 
    on doing that . 
      Could any Xpert make a trial ? ( I don't have enterprise oracle version at this moment )
      

  6.   

    your idea is correct. I've tried this before, no problem.
      

  7.   

    不建议直接在原表上面添加分区,就是可以,新的分区也不会有数据。
    除了exp/imp,可以采用
    create table …… nologging方式创建表或先创建表用
    insert /*+ APPEND */ into table的方式加载数据,这样速度会快一点