由于要部署系统,经常需要使用exp和imp命令导入导出数据。之前遇到的问题主要是存储过程和函数失效,重新编译也就好了。最近几次出现了新问题:导入数据后发现少了几个表,而且反复出现了几次这种情况。
之前以为是在导出过程中出现了异常情况,导致失败。这次突然灵光一现,总结发现,每次缺失的表都是空表,这个估计才是真实原因吧。带着疑问上网一搜,果然是Oracle11g的新特性,据说是为了节省空间。。。。
解决办法呢,我是给每个表插入了一条无意义数据,网上的办法可能更优雅一些:insert一条数据,然后rollback,或者设置deferred_segment_creation参数。
好了,下次不会再出现这个怪异的情况了