database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 7325 게시물 읽기
No. 7325
OID란 무엇인가요?
작성자
성진(에스큘러)
작성일
2008-02-09 09:48
조회수
8,864

제가 postgresql을 이제 시작하는데 전혀 감을 잡지를 못해요T.T


설명좀 부탁드릴께요~(__)굽신

이 글에 대한 댓글이 총 2건 있습니다.

다음은 pgAdmin 프로그램 도움말로 있는 페이지의 내용입니다.
오래전에 번역해 두고는 개발진 쪽에 알려주지 않아서 적용안된.

---------------

기본 키 Primary Key

테이블을 디자인 할 때, 그 테이블에 저장되는 자료를 어떻게 접근 할 것인지를 항상 염두어야 합니다. 이 자료를 접근 하는 가장 보편적인 방법은 각각의 로우에 고유한 주소를 지정하는 지정하는 것입니다. 이 고유한 주소를 사용하기 위해서, 기본 키 Primary Key를 만들어 둡니다. 기본 키의 대상으로 꼭 하나의 칼럼을 사용해야할 필요는 없습니다. 각 로우의 고유한 변별성을 갖는 한 개 이상의 칼럼들로 기본 키를 만들 수도 있습니다. 어떤 테이블의 칼럼이 여러개(대략 3개 이상)가 있을 경우, 기본키를 지정하는 좋은 방법 가운데 하나가, 적당한 자료형의 칼럼을 하나 더 만들고, 그것을 기본키로 지정하는 방법입니다.

물론, 아주 드물게, 기본 키를 필요로 하지 않는 테이블이 있을 수 있습니다. 하지만, 보다 튼튼한 자료구조를 원한다면, 기본 키를 지정하는 것이 낫습니다. 이런 이유에 구루 힌트는 기본 키가 없는 테이블을 접근 하려고 할 때, 이 안내 페이지를 보여줍니다.

PostgreSQL 시스템 테이블들을 살펴보면, 가끔 기본 키가 없는 테이블들을 발견 할 수도 있습니다. 이때는 OID라는 시스템 고유 식별번호를 사용합니다. 즉, 이런 테이블은 내부적으로 OID 칼럼이 따로 있습니다. OID 칼럼을 사용하는 데는 장단점이 있지만, 시스템 테이블에서 사용하는 이유는 단지, 역사적인 이유 때문입니다. PostgreSQL 초기 시스템 테이블 설계 당시 OID를 사용하게 되었고, 그것의 호환성을 고려하면서, 지금까지 사용되고 있습니다. 즉, OID 칼럼으로 기본 키를 대신 하겠다는 생각이 가장 바람직한 방법은 아니라는 것을 알려드립니다. 아마도 언젠가는 이 OID로 대신 되었던 것을 기본 키로 바꾸는 날이 오겠죠.

시스템 테이블을 살펴 볼 경우에, 기본 키를 사용하는 테이블 보다 빠르게 움직이는 것을 느낄 수는 있겠지만, 보다 깔끔한 자료구조를 설계하려면, 반드시 기본 키를 사용하십시오. 이것을 강력하게 권해드립니다!

김상기(ioseph)님이 2008-02-11 13:25에 작성한 댓글입니다.
이 댓글은 2008-02-12 00:58에 마지막으로 수정되었습니다.
님이 2008-02-11 13:32에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
7339Linux 에 있는 PostgreSQL을 win2003의 mssql과 odbc 연결했습니다.
민재홍
2008-02-18
6157
7338like 검색에서 index 사용. [1]
백수환
2008-02-16
5808
7337now()시 뒤죽박죽현상 [4]
영광
2008-02-13
7090
7325OID란 무엇인가요? [2]
성진
2008-02-09
8864
7324다른 데이타 베이스에 존재하는 table join 도와주세요.. [1]
임병민
2008-02-09
5730
7323MySQL vs PostgreSQL wiki [3]
최정대
2008-02-05
6899
7321primary key 와 unique를 한 컬럼에 할 필요가 있나요?? [1]
김도경
2008-02-02
6167
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다