将分区定义从一个表复制到另一个表

时间:2012-08-26 09:15:51

标签: sql oracle partitioning

我有一个包含USER_ID和NAME列的表USERS,它在USER_ID列上进行了分区。

说,我想用USER_ID和PHN_NO列创建另一个表USER_PHN。此表应在USER_ID上具有与USERS表中相同的分区。是否可以将原始表中的分区定义复制到新表中?

2 个答案:

答案 0 :(得分:1)

如果用户和user_phn具有引用约束,则可以使用引用分区(如果您正好使用Oracle 11g)。有关文档,请参阅Oracle® Database VLDB and Partitioning Guide 11g Release 1 (11.1)

此处的一个优点是您拥有较少的冗余数据,因为分区键不需要子行中的副本。这已经在FK关系中定义。

子表继承父表的分区定义。

答案 1 :(得分:0)

考虑在过程中编写USERS表脚本,在DDL中找到分区部分,并用USER_PHN替换表名,然后执行它。