AFAIK ROWID in Oracle represents physical location of a record in appropriate datafile. In which cases ROWID of a record may change ?
The one known to me is UPDATE o
As you have said, it occurs anytime the row is physically moved on disk, such as:
If is in an index organized table, then an update to the primary key would give you a different ROWID as well.