본문 바로가기
DB

DB 이상현상(Anomaly)

by 차가운개발 2024. 10. 10.

 

이상 현상은 잘못된 데이터 구조로 인해 발생하는 데이터 불일치 문제를 말한다. 테이블에서 데이터 중복이 존재하거나 비정규화된 구조를 사용할 때 발생하며 이를 방지하기 위해 정규화가 사용된다.

 

ㅇ 이상 현상의 종류

  • 삽입 이상(Insertion Anomaly)
  • 삭제 이상(Deletion Anomaly)
  • 갱신 이상(Update Anomaly)
학번 이름 나이 성별 강의코드 강의명 전화번호
1001 김유신 20 AB1 데이터베이스 010-1234-1234
1002 김태희 21 ABC1 프로그래밍 010-2222-2222
1003 박혁거세 20 AC1 웹프로그래밍 010-3333-3333
1003 박혁거세 20 AC2 네트워크 010-3333-3333

 

위의 테이블을 예로 들어 설명한다.

 

  • 삽입 이상
    삽입할 테이터를 테이블에 추가할 때 불필요한 데이터도 함께 입력해야 하거나, 불완전한 데이터 때문에 원하는 데이터를 삽입할 수 없는 경우.

    강의를 아직 수강하고 있지 않은 학생의 경우 강의코드와 강의명에 NULL 값이 들어가야 하는 문제
  • 삭제 이상
    테이블에서 특정 데이터를 삭제할 때 원하지 않는 관련 데이터도 함께 삭제되는 경우

    강의 코드 AB1인 데이터베이스 강의를 삭제하면 김유신 학생의 데이터도 같이 삭제된다.
  • 갱신 이상
    수정 시 발생하는 문제로 동일 데이터가 여러 곳에 저장되어 있을 때, 하나의 데이터를 수정하면 중복된 모든 데이터를 일관성있게 수정해야하는 문제다.

    3번째 행과 4번째 행은 동일 인물이지만, 3번째 행의 전화번호를 수정하면 동일인물의 전화번호가 달라지는 데이터 불일치 문제가 발생한다.

'DB' 카테고리의 다른 글

DB Stored Procedure 저장 프로시저  (1) 2024.10.10
DB Normalization(정규화)  (0) 2024.10.10
DB Join(조인)  (0) 2024.10.10
DB Key  (0) 2024.10.04
DB SQL Injection  (0) 2024.10.04