관계형 데이터베이스를 설계하면서 정보의 이상 현상을 고려해야하는데
이상 현상은 데이터베이스를 잘못 설계해 데이터를 삽입, 갱신, 삭제 할 때 논리적 이상이 생기는 경우를 말합니다.
삽입 이상: 자료를 삽입할 때 의도하지 않은 자료까지 삽입해야만 테이블에 추가가 가능한 경우
강의를 수강하지 않은 새로운 학생을 삽입할 경우 아직 수업을 수강하지 않았다면 수업관련 속성이 한 테이블에 속한 경우 null값이 들어가야만 학생을 삽입할 수 있습니다. 이 때 수업관련 속성이 NOT NULL이라면 이 데이터는생성될 수 없습니다.
갱신 이상: 중복된 데이터 중 일부 튜플만 수정되어 데이터 모순이 일어나는 경우
한 사람의 정보가 달라졌을 때 그 사람의 모든 튜플이 새로 갱신되어야 합니다.
같은 사람의 데이터가 한 테이블에 두 개의 튜플로 따로 존재하는데 하나만 수정할 경우 무결성을 해치게 됩니다.
삭제 이상: 어떤 정보를 삭제하면, 의도하지 않은 다른 정보까지 삭제됩니다.
이벤트의 발생으로 어떤 속성을 삭제했더니 그 튜플이 통째로 삭제되어 어떤 속성 외 의미 있는 정보까지 삭제됩니다..
이러한 경우를 방지하기 위해 정규화의 과정을 거칩니다.
'CS > 데이터베이스' 카테고리의 다른 글
[DB] 외래키는 꼭 설정해야할까? (0) | 2023.07.19 |
---|---|
[DB] 데이터베이스 종류와 장단점 (0) | 2023.07.18 |
[DB] 릴레이션, 튜플, 속성, 도메인 (0) | 2023.07.18 |
[DB] DB설계 정리 (정규화) (0) | 2023.07.17 |
댓글