
Relation은 데이터베이스에서 사용되기 위한 조건을 갖춘 Table입니다. 이때, Relation의 제약 조건은 'Cell은 단일값 가져야함', '중복된 Row가 존재하지 않음' 등이 있습니다. 하지만, 통상적으로 두 용어를 구분하지 않고 사용하기도 합니다.
Super Key는 각 Row를 유일하게 식별할 수 있는 하나 또는 그 이상인 속성들의 집합입니다. 이는 유일성만 만족하면 슈퍼키가 될 수 있습니다. 유일성이란 하나의 값으로 특정 Row를 유일하게 찾아낼 수 있음을 의미합니다.
Candidate Key는 최소성을 만족하는 Super Key 입니다. 즉, 각 Row를 유일하게 식별할 수 있는 최소한의 속성들의 집합입니다. 최소성이란 모든 Row를 유일하게 식별하기 위해 꼭 필요한 속성만으로 구성되어 있음을 의미합니다.
Primary Key는 Candidate Key 중 선택한 하나의 Main Key입니다. 각 Row를 구분하는 유일한 열이기에 Null과 중복값을 허용하지 않는 특징을 가지고 있습니다. 또한, Primary Key는 Table당 1개만 지정할 수 있습니다.
Alternative Key는 Primary Key가 아닌 Candidate Key입니다.
Composite Key는 Table에서 각 Row를 식별할 수 있는 두 개 이상의 속성으로 구성된 Candidate Key입니다. 즉, Table의 경우에 따라 최소성을 만족하여 Primary Key가 될수도 있습니다.
Foreign Key는 다른 Table의 Primary Key와 참조(연결)되는 Table의 속성입니다.
위 내용을 정리하자면 다음 사진과 같습니다.

후보키중 선택받은 주키입니다. 유일성과 최소성을 만족하고, NULL과 중복값이 허용되지 않는 특징을 가지고 있습니다.
유일성과 최소성을 만족하는 키입니다.
유일성은 만족하지만 최소성을 만족하지 못하는 키입니다.
후보키중 주키로 선택받지 못한 키입니다. 즉, 기본키가 아닌 후보키입니다.
유일성과 최소성을 만족하기 위한 속성이 2개 이상일 필요한 경우 복합키라고 합니다.
다른 테이블과 연결(참조) 관계를 위한 Table의 속성을 말합니다.