最近在用ORACLE 11G 。对数据导出导入的时候发现一个问题:oracle 不会对无数据的空表进行导出。查资料发现,原来这种情况只出现在Oracle 11g 中,处理办法如下:
sqlcommand: alter system set deferred_segment_creation=false;
意思是禁止推迟创建表的段,也就是表创建后不管有没有数据都要分配空间。该参数修改后对该时间点以前创建的表无用。所以还是要对以前的表分配空间。
sql: Select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0 or num_rows is null
以上拼出来的SQL可以批量生成修改分配空间为空的表。将查询的结果执行以下即可。现在再进行EXP 或者 EXPDP 的导出命令就可以了
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。