728x90
반응형
1. 관계
- 데이터베이스에 테이블은 여러 개가 존재합니다.
- 이러한 테이블은 서로의 관계가 정의되어 있습니다.
- 이러한 관계를 관계화살표로 나타냅니다.
2. 키
- 키는 테이블 간의 관계를 더 명확하게 하고 테이블 자체의 인덱스를 위해 설정된 장치입니다.
- 키의 종류로는 기본키, 외래키, 후보키, 슈퍼키, 대체키가 있습니다.
2.1 기본키
- 기본키(primary key)는 줄여서 PK 또는 프라이머리키라고 많이 부릅니다.
- 기본키는 유일성과 최소성을 만족하는 키입니다.
- 이는 테이블의 데이터 중 고유하게 존재하는 속성이며 기본키에 해당하는 데이터는 중복되어서는 안 됩니다.
- 기본키는 자연키 또는 인조키 중에 골라서 설정합니다.
2.2 자연키
- 유저 테이블을 만든다고 가정한다면 속성은 주민번호, 이름, 성별 등이 존재할 수 있습니다.
- 이 중 이름, 성별은 중복된 값이 들어올 수 있으므로 부적절하며 남게 되는 것은 주민번호입니다.
- 이런 식으로 중복된 값들을 제외하며 중복되지 않는 것을 '자연스레' 뽑다가 나오는 키를 자연키라고 합니다.
- 자연키는 언제가는 변하는 속성을 가집니다.
2.3 인조키
- 방금처럼 유저 테이블을 만든다고 했을 때 회원 테이블을 생성한다고 가정하면 주민번호, 이름, 성별, 등의 속성이 있습니다.
- 여기에 인위적으로 유저 아이디를 부여합니다. 이를 통해 고유 식별자가 생겨납니다.
- 이렇게 인위적으로 생성한 키를 인조키라고 합니다.
- 자연키와는 대조적으로 변하지 않습니다.
2.4 외래키
- 외래키(Foreign key)는 FK라고도 하며, 다른 테이블의 기본키를 그대로 참조하는 값으로 개체와의 관계를 식별하는 데 사용됩니다.
- 외래키는 중복되어도 됩니다.
2.5 후보키
- 후보키(candidate key)는 기본키가 될 수 있는 후보들입니다.
- 후보키는 유일성과 최소성을 동시에 만족하는 키입니다.
2.6 대체키
- 대체키(alternate key)는 후보키가 두 개 이상일 경우 어느 하나를 기본키로 지정하고 남은 후보키들을 말합니다.
2.7 슈퍼키
- 슈퍼키(super key)는 각 레코드를 유일하게 식별할 수 있는 유일성을 갖춘 키입니다.
728x90
반응형
'CS > Database' 카테고리의 다른 글
[DataBase] 데이터베이스와 테이블 관리하기 (1) | 2024.03.10 |
---|---|
[Database] 트랜잭션과 무결성 (0) | 2023.05.19 |
[Database] ERD와 정규화 과정 (0) | 2023.05.18 |
[Database] 데이터베이스의 기본 (1) (0) | 2023.04.09 |