分区表的表进行update操作


今天对一张创建了分区表的表进行update操作,正好需要修改的是创建分区的那一列,由于是要修改在分区表范围内的数据,所以无法修改。

然后搜了一下,需要修改row movement这个属性:alter table eq_excpdetail enable row movement;将该属性打开,然后就可以对分区列进行修改。关闭是alter table eq_excpdetail disable row movement; 

 

将row movement设置为enable,有可能发生行的物理移动,行的rowid会变化,某 一行更新时,如果更新的是分区列,并且更新后的列值不属于原来的这个分区,如果开启了这个选项,就会把这行从这个分区中delete掉,并加到更新后所属 的分区。相当于一个隐式的delete+insert,但是不会触发insert/delete触发器。如果没有开启这个选项,就会在更新时报错。

 

当然row movement不只用于分区还用于闪回。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM