본문 바로가기
CS/데이터베이스

[DB] 이상 현상(Anomaly)

by Unagi_zoso 2023. 7. 18.

관계형 데이터베이스를 설계하면서 정보의 이상 현상을 고려해야하는데

이상 현상은 데이터베이스를 잘못 설계해 데이터를 삽입, 갱신, 삭제 할 때 논리적 이상이 생기는 경우를 말합니다.

 

 

삽입 이상: 자료를 삽입할 때 의도하지 않은 자료까지 삽입해야만 테이블에 추가가 가능한 경우

강의를 수강하지 않은 새로운 학생을 삽입할 경우 아직 수업을 수강하지 않았다면 수업관련 속성이 한 테이블에 속한 경우 null값이 들어가야만 학생을 삽입할 수 있습니다. 이 때 수업관련 속성이 NOT NULL이라면  이 데이터는생성될 수 없습니다.

 

 

갱신 이상: 중복된 데이터 중 일부 튜플만 수정되어 데이터 모순이 일어나는 경우

한 사람의 정보가 달라졌을 때 그 사람의 모든 튜플이 새로 갱신되어야 합니다.

같은 사람의 데이터가 한 테이블에 두 개의 튜플로 따로 존재하는데 하나만 수정할 경우 무결성을 해치게 됩니다.

 

 

삭제 이상: 어떤 정보를 삭제하면, 의도하지 않은 다른 정보까지 삭제됩니다.

이벤트의 발생으로 어떤 속성을 삭제했더니 그 튜플이 통째로 삭제되어 어떤 속성 외 의미 있는 정보까지 삭제됩니다..

 

이러한 경우를 방지하기 위해 정규화의 과정을 거칩니다.

 

댓글