ERD

kxsxh·2024년 3월 6일
0

ERD

목록 보기
1/1

정규화

정규화 과정
=> 정규화 과정을 통해 불필요하게 중복된 데이터 제거 작업을 하게 된다

  • 정규화 수준을 높이면 데이터량이 줄고 데이터 갱신 속도가 빠르며 같은 자료가 여러 개체에 분산된 것보다 일관성을 유지하기 쉽다

따라서 먼저 정규화 과정을 수행하고 수행속도나 프로그램을 구현하기 어려운 경우에는 비정규화(역정규화)과정을 보완하게 된다

역정규화 ➡️ 정규화를 거스린다 ➡️ 비정규화

1정규화

반복되는 속성들을 다른 개체로 나누어 분리한다
식별자가 꼭 있어야 한다

[암기⭐] 부모테이블의 식별자는 자식테이블의 외부키(Foreign Key)로 전이 되어짐

2정규화

모든 속성은 식별자에 직접적으로 의존적이어야 하며이에 해당되지 않는 속성을 분리한다

3정규화

식별자 이외의 속성은 식별자가 아닌 다른 속성에 종속적이지 않아야 한다
식별자 이외의 속성에 종속적인 경우에 분리해 낸다

4정규화

의존적인 다 대 다(Many to Many)관계를 제거한다


식별자( identifier)

어떤 대상을 유일하게 식별 및 구별할 수 있는 이름


  • 유추할 수 있는 데이터는 반드시 코드화해야 한다
    학과명을 코드화 시키지 않고 그대로 받아주면 아래와 같이 오류가 발생할 수 있다
    학과명에 "컴퓨터공학", "컴퓨터공학과", "컴공과"와 같이 들어올 수 가 있으므로 이것은 우리가 보기에는 동일한 학과만 데이터베이스로 보기에는 서로 다른 학과가 되므로 학과 코드라는 코드화된 값을 입력하도록 해야 한다.
    유추할 수 없는 데이터(신청자 주민번호..)는 데이터 값 그대로 받도록한다

0개의 댓글