제가 postgresql을 이제 시작하는데 전혀 감을 잡지를 못해요T.T
설명좀 부탁드릴께요~(__)굽신
다음은 pgAdmin 프로그램 도움말로 있는 페이지의 내용입니다. 오래전에 번역해 두고는 개발진 쪽에 알려주지 않아서 적용안된. ---------------
기본 키 Primary Key
테이블을 디자인 할 때, 그 테이블에 저장되는 자료를 어떻게 접근 할 것인지를 항상 염두어야 합니다. 이 자료를 접근 하는 가장 보편적인 방법은 각각의 로우에 고유한 주소를 지정하는 지정하는 것입니다. 이 고유한 주소를 사용하기 위해서, 기본 키 Primary Key를 만들어 둡니다. 기본 키의 대상으로 꼭 하나의 칼럼을 사용해야할 필요는 없습니다. 각 로우의 고유한 변별성을 갖는 한 개 이상의 칼럼들로 기본 키를 만들 수도 있습니다. 어떤 테이블의 칼럼이 여러개(대략 3개 이상)가 있을 경우, 기본키를 지정하는 좋은 방법 가운데 하나가, 적당한 자료형의 칼럼을 하나 더 만들고, 그것을 기본키로 지정하는 방법입니다.
물론, 아주 드물게, 기본 키를 필요로 하지 않는 테이블이 있을 수 있습니다. 하지만, 보다 튼튼한 자료구조를 원한다면, 기본 키를 지정하는 것이 낫습니다. 이런 이유에 구루 힌트는 기본 키가 없는 테이블을 접근 하려고 할 때, 이 안내 페이지를 보여줍니다.
PostgreSQL 시스템 테이블들을 살펴보면, 가끔 기본 키가 없는 테이블들을 발견 할 수도 있습니다. 이때는 OID라는 시스템 고유 식별번호를 사용합니다. 즉, 이런 테이블은 내부적으로 OID 칼럼이 따로 있습니다. OID 칼럼을 사용하는 데는 장단점이 있지만, 시스템 테이블에서 사용하는 이유는 단지, 역사적인 이유 때문입니다. PostgreSQL 초기 시스템 테이블 설계 당시 OID를 사용하게 되었고, 그것의 호환성을 고려하면서, 지금까지 사용되고 있습니다. 즉, OID 칼럼으로 기본 키를 대신 하겠다는 생각이 가장 바람직한 방법은 아니라는 것을 알려드립니다. 아마도 언젠가는 이 OID로 대신 되었던 것을 기본 키로 바꾸는 날이 오겠죠.
시스템 테이블을 살펴 볼 경우에, 기본 키를 사용하는 테이블 보다 빠르게 움직이는 것을 느낄 수는 있겠지만, 보다 깔끔한 자료구조를 설계하려면, 반드시 기본 키를 사용하십시오. 이것을 강력하게 권해드립니다!