모든 테이블에는 여러 가지시스템 열시스템에 의해 암시 적으로 정의됩니다. 그러므로, 이 이름은 사용자 정의 열의 이름으로 사용할 수 없습니다. (이 제한은 이름과 분리되어 있습니다. 핵심 단어 여부입니다. 이름을 인용하면 탈출 할 수 없습니다 이러한 제한 사항.) 당신은 실제로 걱정할 필요가 없습니다. 이 칼럼은 존재한다는 것을 알고 있습니다.
개체 행의 식별자 (객체 ID). 이것은 일련 번호입니다 자동으로 추가됩니다메이저 토토 사이트모든 테이블 행에 (그렇지 않으면 테이블은를 사용하여 작성되었습니다.OIDS,이 경우이 열은 존재하지 않습니다). 이것 열은 유형입니다OID(와 같은 이름 열); 보다PostgreSQL : 문서유형에 대한 자세한 정보.
이 행이 포함 된 테이블의 OID. 이 칼럼은입니다 상속에서 선택한 쿼리에 특히 편리합니다 계층 구조는 그것 없이는 어느 것을 말하기가 어렵습니다 개별 테이블 행이 나왔습니다. 그만큼Tableoid에 가입 할 수 있습니다OID열pg_class테이블 이름을 얻으려면.
삽입의 ID (트랜잭션 ID) 이 행 버전의 거래. (행 버전은 행의 개별 상태; 행의 각 업데이트는 a를 만듭니다 동일한 논리 행을위한 새 행 버전.)
명령 식별자 (0에서 시작) 내 거래 삽입.
삭제의 ID (트랜잭션 ID) 거래되지 않은 행 버전의 경우 트랜잭션 또는 0입니다. 그것은 이 열이 눈에 보이는 행에서 0이 될 수 있습니다. 버전. 일반적으로 삭제임을 나타냅니다 거래는 아직 약속되지 않았거나 시도하지 않았습니다 삭제가 롤백되었습니다.
삭제 트랜잭션 내 명령 식별자, 또는 0.
그 내의 행 버전의 물리적 위치 테이블. 비록CTID행을 찾는 데 사용할 수 있습니다 매우 빨리 버전, 행의CTID업데이트 될 때마다 변경됩니다 또는 움직임진공 Full. 그러므로CTID는 장기적으로 쓸모가 없습니다 행 식별자. OID 또는 더 나은 사용자 정의 일련 번호는 논리적 행을 식별하는 데 사용해야합니다.
OIDS는 32 비트 수량이며 단일에서 할당됩니다. 클러스터 전체 카운터. 크거나 오래된 데이터베이스에서는 그렇습니다 카운터가 포장 할 수 있습니다. 따라서 나쁘다 조치를 취하지 않는 한 OID가 독특하다고 가정하도록 연습하십시오. 이것이 사실인지 확인하십시오. 행을 식별 해야하는 경우 시퀀스 생성기를 사용하는 테이블을 강력히 권장합니다. 그러나 몇 가지 추가로 OID도 사용할 수 있습니다. 예방 조치가 취해집니다 :
OID 열에 고유 한 제약이 생성되어야합니다. OID가 식별하는 데 사용되는 각 테이블 줄.
OID는 결코 테이블 전체에 독특하다고 가정해서는 안됩니다. 의 조합 사용Tableoid및 ROW OID 데이터베이스 전체 식별자가 필요한 경우
해당 테이블은를 사용하여 만들어야합니다.OIDS와 함께전진 호환성을 보장합니다 향후 릴리스메이저 토토 사이트. 계획되어 있습니다OIDS없이기본.
트랜잭션 식별자도 32 비트 수량입니다. a 수명이 긴 데이터베이스 트랜잭션 ID가 랩을 할 수 있습니다. 약. 이것은 적절한 유지 보수를 고려할 때 치명적인 문제가 아닙니다 절차; 보다메이저 토토 사이트 : 문서 : 8.0 : 일상적인 토토 유지 관리 작업세부. 그러나 독창성에 의존하는 것은 현명하지 않습니다. 장기적으로 거래 ID (10 억 이상 업무).
명령 식별자도 32 비트 수량입니다. 이것은 a를 만듭니다 2의 하드 제한32(4 억)SQL단일 트랜잭션 내에서 명령. ~ 안에 이 한도를 연습하는 것은 문제가되지 않습니다. 한도는 수SQL명령이 아닙니다 처리 된 행의 수.