您的位置:首页 > 数据库 > Oracle

oracle exp空表

2016-03-17 16:20 351 查看
在使用exp/imp时候总是遇到空表问题,记录下

11g默认空表不占用空间,如果要在创建空表时候分配空间,修改静态参数:deferred_segment_creation 为false

这个参数只对修改之后生效,之前的表需要手动分配:

 

SELECT 'ALTER TABLE ' || T.TABLE_NAME || ' ALLOCATE EXTENT;', T.PARTITIONED
FROM ALL_TABLES T
WHERE T.NUM_ROWS = 0
AND T.OWNER = 'XXX'
AND T.PARTITIONED = 'NO'
UNION ALL
SELECT 'ALTER TABLE ' || T1.TABLE_NAME || ' MODIFY PARTITION ' ||
T2.PARTITION_NAME || ' ALLOCATE EXTENT;'
FROM ALL_PART_TABLES T1, ALL_TAB_PARTITIONS T2
WHERE T1.TABLE_NAME = T2.TABLE_NAME
AND T1.OWNER = T2.TABLE_OWNER
AND T1.OWNER = 'XXX';


另外如果是使用expdp/impdp就没有这个问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: