복합 키(composite key)는 두 개 이상의 열을 함께 사용해 레코드를 식별하는 키다. [[기본 키]]를 여러 열로 구성할 때는 각 값이 아니라 조합의 중복을 막는다. ([PostgreSQL의 키 제약 조건](https://www.postgresql.org/docs/current/ddl-constraints.html)) - 예컨대 주문 번호와 품목 번호의 조합을 키로 정할 수 있다. 각 열에 같은 값이 다시 나와도 조합이 다르면 별도 행이다. ([여러 열의 기본 키](https://www.postgresql.org/docs/current/ddl-constraints.html)) - 복합 기본 키의 모든 구성 열은 NULL을 허용하지 않는다. 일부 값이 빠진 상태를 식별자로 쓸 것인지부터 결정한다. ([기본 키와 NULL](https://www.postgresql.org/docs/current/ddl-constraints.html)) - 다른 표에서 이 키를 참조한다면 대응하는 열의 수와 자료형도 맞춰야 한다. [[복합 외래 키]]는 관계를 여러 값의 조합으로 연결한다. ([여러 열의 외래 키](https://www.postgresql.org/docs/current/ddl-constraints.html)) ## 기타 등등 - 표 하나의 기본 키는 하나지만 그 키를 구성하는 열은 여러 개일 수 있다. [출처](https://www.postgresql.org/docs/current/ddl-constraints.html) - PostgreSQL은 기본 키를 선언하면 유일성을 확인하는 인덱스도 자동으로 만든다. [출처](https://www.postgresql.org/docs/current/ddl-constraints.html) #데이터베이스 #데이터 #식별자