sql – 什么可以导致Oracle ROWID更改?

前端之家收集整理的这篇文章主要介绍了sql – 什么可以导致Oracle ROWID更改?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Oracle中的AFAIK ROWID表示适当数据文件中记录的物理位置.
在哪些情况下,记录的ROWID可能会更改?

我所知道的是在分区表上UPDATE将“记录”移动到另一个分区.

还有另外一种情况吗?我们的大多数数据库都是Oracle 10.

解决方法

正如你所说,这个行在物理上在磁盘上移动时就会出现,例如:

>导出/导入表
> ALTER TABLE XXXX MOVE
> ALTER TABLE XXXX SHRINK SPACE
> FLASHBACK TABLE XXXX
>拆分分区
>更新一个值,使其移动到一个新的分区
>组合两个分区

如果是在索引组织表中,则对主键的更新将会给您一个不同的ROWID.

原文链接:https://www.f2er.com/mssql/82182.html

猜你在找的MsSQL相关文章