더북(TheBook)

또 복합 기본키(Compound Primary Key)는 다음 두 가지 이유에서 효율성이 떨어지므로 사용하지 않는 것이 좋다.

1. 기본키를 정의할 때 대부분의 데이터베이스 시스템은 해당 컬럼에 유일 인덱스를 같이 만든다. 컬럼 두 개 이상에 유일 인덱스를 만들면 데이터베이스 시스템이 할 일만 더 많아진다.

2. 일반적으로 기본키로 조인을 수행하는데, 기본키가 여러 컬럼으로 구성되어 있으면 쿼리가 좀 더 복잡하고 느려진다.

하지만 특정한 상황에서는 여러 컬럼을 기본키로 사용하는 것이 마땅하다. 제품과 판매회사를 연결하는 테이블이 있고, 이 테이블은 관련된 테이블의 기본키를 가리키는 ProductIDVendorID 컬럼으로 구성되어 있다고 하자. 이 테이블에는 특정 판매회사가 해당 제품의 주 공급처인지 부 공급처인지 나타내는 컬럼, 판매회사가 부과하는 제품 가격 컬럼 같은 다른 컬럼도 포함되어 있을 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.