02_이상 현상

PLO·2023년 5월 28일

01_이상 현상이란?

  • 이상 현상은 데이터베이스에서 데이터의 일관성, 무결성, 중복성 등을 해치는 문제를 말합니다.
    이상 현상은 데이터베이스의 구조와 연산에 따라 발생할 수 있으며,
    데이터의 삽입, 삭제, 갱신, 조회 등 다양한 작업에서 나타날 수 있습니다.

02_이상 현상의 종류

  1. 삽입 이상 (Insertion Anomaly)
    삽입 이상은 데이터를 삽입할 때 발생하는 문제를 말합니다.
    예를 들어, 어떤 테이블에서 특정 컬럼의 속성을 NULL Able False로 설정해둔 경우를 살펴보겠습니다.
    만약 해당 컬럼에 속성에 대한 정보가 삽입되지 않은 레코드를 추가하려고 한다면 어떻게 될까요?
    이 경우, 다른 속성들은 NULL이 아니라 유효한 값을 가져야 하기 때문에
    해당 컬럼은 '' 값이나 임의의 값으로 채워져야 할 것입니다.
    이는 데이터의 무결성을 침해하고, 데이터의 일관성을 해칠 수 있습니다.
    따라서 삽입 이상은 데이터베이스에 새로운 레코드를 삽입할 때 발생하는 문제로,
    데이터의 일관성을 유지하는 데 어려움을 줄 수 있습니다.

  2. 삭제 이상 (Deletion Anomaly)
    삭제 이상은 데이터를 삭제할 때 발생하는 문제를 말합니다.
    예를 들어, 어떤 테이블에서 특정 컬럼의 값을 포함하고 있는 모든 레코드를 삭제하려고 할 때
    다른 컬럼들에 대한 정보도 함께 삭제될 수 있습니다.
    이는 삭제된 레코드에 대한 의미 있는 정보가 다른 레코드에도 남아있지 않기 때문에
    데이터의 무결성을 침해하고, 데이터의 일관성을 해칠 수 있습니다.
    따라서 삭제 이상은 데이터베이스에서 특정 레코드를 삭제할 때 발생하는 문제로,
    데이터의 무결성을 유지하는 데 어려움을 줄 수 있습니다.

  3. 갱신 이상 (Update Anomaly)
    갱신 이상은 데이터를 갱신할 때 발생하는 문제를 말합니다.
    예를 들어, 어떤 테이블에서 중복된 데이터가 있는 경우를 생각해보겠습니다.
    이 중복된 데이터 중 일부를 업데이트하면 어떻게 될까요? 업데이트된 데이터가 일부 튜플에만 적용되고, 나머지 튜플은 이전 값을 가지고 있는 상태로 남을 수 있습니다.
    이는 데이터의 일관성을 해칠 뿐만 아니라, 데이터의 중복성을 증가시킬 수 있습니다.
    따라서 갱신 이상은 데이터베이스에서 데이터를 갱신할 때 발생하는 문제로,
    데이터의 일관성과 중복성을 관리하는 데 어려움을 줄 수 있습니다.

선택 이상 (Selection Anomaly):
선택 이상은 데이터를 조회할 때 발생하는 문제를 말합니다. 어떤 테이블에서 특정 조건에 맞는 데이터를 조회하면 원하지 않은 데이터가 함께 조회되는 경우가 있을 수 있습니다. 이는 데이터의 일관성을 해치고, 정확한 결과를 얻기 어렵게 만듭니다.

다중 값 종속 (Multivalued Dependency):
다중 값 종속은 테이블의 속성 간에 다중 값 관계가 존재할 때 발생하는 문제를 말합니다. 예를 들어, 한 테이블의 키 속성에 대해 여러 개의 다른 속성 값이 존재할 수 있는 경우입니다. 이로 인해 데이터의 중복성과 일관성을 해치며, 데이터의 업데이트나 삭제가 어려워집니다.

이원 종속 (Partial Dependency):
이원 종속은 테이블의 키 속성이 아닌 다른 속성들 간에 종속 관계가 존재할 때 발생하는 문제를 말합니다. 어떤 속성이 부분적으로 다른 속성에 종속되어 있을 경우, 이 속성을 업데이트하거나 삭제하면 다른 속성들에도 영향을 미칠 수 있습니다. 이로 인해 데이터의 일관성을 해치며, 데이터의 갱신이 어려워집니다.

profile
주니어 개발자 Plo입니다. 🙇‍♂️

0개의 댓글