我用IMP命令把DMP的数据导入到ORACLE 10g后,现在要删除,可是我在执行drop tablespace wqdb01 including contents and datafiles;时,报错: ORA-14404:分区表包含不同表空间中的分区----------
我的数据分散在wqdb01,wqdb02,...,wqdb10这10个表空间中,请问我该怎么删除????? 谢谢先

解决方案 »

  1.   

    你建了分区表 且一部分数据在表空间wqdb01 里面 就是找到你那个分区表 把wqdb01里的数据合并到其他的表空间
      

  2.   

    找到分区表,先删除分区表再这些表空间上的分区:alter table tablename drop partition partitionname;
    然后就可以执行:drop tablespace wqdb01 including contents and datafiles; 删掉空间了
      

  3.   


    1.查找分区表select table_name from user_tables where partitioned='YES'; 2.查看你的分区表的定义
    set long 1000
    select dbms_metadata.get_ddl('TABLE','TABLENAME','USERNAME') FROM dual;3.合并分区表
    alter table tablename merge partitions wqdb01,wqdb02 into partition wqdb02;
    4.查看分区表的索引
    select index_name,tablespace_name,table_name from user_indexes where PARTITIONED='YES' and table_name='TABLENAME';
    5.查看分区表的索引的定义
    select dbms_metadata.get_ddl('INDEX','INDEX_NAME','USERNAME') FROM dual
    6.删除索引
    drop index INDEX_NAME
    7 删除表空间
    drop tablespace wqdb01 including contents and datafiles;这样就不会出现ORA-14404:分区表包含不同表空间中的分区以及
    ORA-14405: 分区索引包含不同表空间中的分区 的问题
      

  4.   

    find tables with partitions which span the tablespace being dropped and some other tablespace(s). Drop these tables or move partitions to a different tablespace
      

  5.   

    5楼已给出步骤,具体请参考oracle10g Error Messages文档。