데이터베이스 사랑넷에 ctid 와 오라클 rowid 에 관한 질문이 올라왔네요.
오라클의 rowid 는 해당로우가 삭제되고, 재 insert 되지 않는 이상 rowid 값이 변하지는 않습니다.
update 시에도 rowid 값은 변하지 않습니다.
하지만 table move 명령등을 이용한 테이블 reorg 시에는 rowid 값이 바뀌게 됩니다.
기타 변경되는 경우 - 오라클)
alter table t shrink space compact..
alter table t move..
flashback table t...
PostgreSQL 경우 ctid 가 오라클의 rowid 와 비슷한 개념이기는 합니다만, 큰차이가 있습니다.
update 시에 ctid 값이 오라클 rowid 와 달리 바뀌어 버린다는 점입니다.