2024.03.29 TIL - RDBMS, PK와FK

김민석·2024년 3월 29일
0

TIL

목록 보기
61/78

RDBMS란

RDBMS(관계형 데이터 베이스 관리 시스템)의 정규화는 데이터베이스 설계에서 중복을 제거하고 데이터 중복을 최소하하여 데이터베이스를 보다 효율적으로 설계하는 과정.

  • 이를 통해 데이터의 일관성, 유지보수성, 확장성 등을 개선할 수 있다.

정규화는 일반적으로 다음과 같은 단계로 이루어짐.

  • 제 1 정규화(1NF): 각 테이블이 하나의 원자 값으로만 구성되도록 함. 즉, 각 열에는 중복되는 필드가 없어야함

  • 제 2 정규화(2NF): 부분 함수 종속을 제거. 기본 키가 아닌 모든 속성이 기본 키에 완전 함수 종속되어야 함

  • 제 3 정규화(3NF): 이행적 함수 종속을 제거. 모든 비기본 속성이 기본 키에 이행적으로 종속되지 않아야 함.

  • BCNF(Boyce-Codd 정규화 형태): 모든 결정자가 후보 키여야 함. 이를 통해 제 3 정규화에서 발생할 수 있는 이상 현상을 방지!

4,5 정규화도 있으나 일반적으로 3또는 BCNF까지 정규화를 수행하는 경우가 많음

정규화 과정을 통해 중복된 데이터를 제거하고 이상 현상을 방지하여 데이터베이스의 구조를 최적화할 수 있지만 과도한 정규화는 성능 저하를 일으킬 수 있으므로 적절한 수준에서의 정규화가 필요.


Primary Key(기본 키)

데이터베이스 테이블 내의 모든 레코드에서 고유한 아이드를 제공한다.

PK의 특징

  1. 모든 레코드가 서로 다른 값을 가지고 있어 각 레코드를 식별할 수 있다.
  2. NULL값이 존재할 수 없다.
  3. 레코드의 값은 중복이 불가능하다.
  4. 테이블에는 하나의 기본키만 가질 수 있지만 경우에 따라 1개 이상의 기본키를 정의할 수도 있다.

Foreign Key(외래 키)

데이터가 일관될 수 있도록 돕는 역할을 한다. 보통은 두 개의 데이터베이스 테이블을 잇고자 기본 키와 사용된다. 일종의 테이블을 연결하는 가상의 다리 역할.

FK의 특징

  1. 외부 키는 한 테이블의 필드로, 다른 테이블의 기본키를 나타낸다.
  2. 외래 키를 가지고 있는 테이블을 하위 테이블, 기본 키를 가지고 있는 테이블을 참조 이블 또는 상위 테이블이라고 한다.
  3. 각 외부 키와 기본 키는 1:1 관계로 매칭되어야 하며, 기본 키에 존재하지 않는 값이 외부키에 존재할 수 없다. -> 외래 키 제한 표현으로 데이터베이스에게 두 테이블 간의 관계를 알려주어야 한다.
profile
화이팅 화이팅

0개의 댓글