관리 메뉴

아이짱구

PostgreSQL CTID 와 오라클 ROWID 본문

database/postgresql

PostgreSQL CTID 와 오라클 ROWID

아이짱구 2016. 8. 29. 13:47

오라클의 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 와 달리 바뀌어 버린다는 점입니다.


출처: PostgreSQL is so special PostgresDBA.com

Comments