原因: 在oracle11g有个特征,如果某个表从来没有被使用过,则数据库系统不会给这个表分配段,只在数据字典中保存其结构。这样,从来没有被使用过的表使用exp命令就不会被导出。
解决办法:
第一种:每个表都加入假数据,然后导出;
第二种:执行alter system set deferred_segment_creation=false命令。注意这个命令执行后,之后新建的表才会起作用,因此要重建原来的表。我们可以使用PL/SQL Developer这个工具重建。先对准要重建的表右单击,然后在弹出的菜单中选择“Edit”命令。在弹出的页面中选择“Recreate table"选项,然后点“Apply”按钮就行了,注意:
人家提醒了,这样会删掉这个表的所有数据(这个无所谓)、触发器、外键引用。因此要注意小心使用。
第三种:你自己想,应该还有其他办法,反正让系统给表分配段就行了
原文链接:http://blog.csdn.net/achilles12345/article/details/7259001