**oracle报错 ORA-14402: 更新分区关键字列将导致分区的更改
**
原因: 部份表有分区,对分区字段的修改可能导致 数据由一个分区跑到另外一个分区 对数据库而言是大事
所以有专门的语句去负责是否可以
如果要修改 分区字段需要执行
alter table xxx enable row movement; – 中文含义就是 使这个表的数据移动可行
对字段修改之后 commit;之后
再执行
alter table xxx disable row movement; – 使这个表的数据移动不可行
默认情况下 都是不可行的
update 分区键
实际上分为3步:先从原有分区将数据删除;将原数据转移到新分区上;更新数据。
UPDATE被分解为DELET、INSERT、UPDATE三个操作,增加了性能负担。其中,DELETE的查询条件与原UPDATE的查询条件相 同,新的UPDATE的查询条件是基于INSERT生成的新的ROWID,相应的Redo Log、Undo Log会增加;