如何增加分区oracle的表的列大小。
create table tbl(id number(5) primary key,
name varchar2(20))
partition by range(id) ( partition part1 values less than (100));
现在我想将列id的大小增加到10。 如何在不丢失数据的情况下这样做?
答案 0 :(得分:1)
所以你可能发现了: ORA-14060:不能更改表分区列的数据类型或长度
这意味着您需要重建表格。
可能有一种方法可以使用DBMS_REDEFINITION(http://docs.oracle.com/cd/E11882_01/appdev.112/e25788/d_redefi.htm),或者您可以使用常规表交换分区(应用新列定义),使用相同的新列定义重新创建分区表并交换表背部。好消息是在此过程中不需要移动任何数据。
信用在这里(见线程的底部):https://forums.oracle.com/thread/2445497