데이터 복구 용이: 실제 데이터를 삭제하는 대신, '삭제됨' 상태로 표시만 변경되기 때문에 필요할 경우 쉽게 복구 가능, 실수로 데이터를 삭제하더라도 복구 할 수 있다.
데이터 무결성 유지: 데이터 간의 관계를 유지하면서도 삭제 작업을 처리 가능, 완전히 삭제하는 대신 '삭제됨' 상태로 만들면 데이터 간의 참조 관계를 유지
=> 데이터 무결성을 보장하는 데 도움
데이터 분석에 유용: 삭제된 데이터까지 포함하여 전체 데이터를 분석하는 데 유용,
(ex; 특정 기간 동안 사용자의 활동 패턴, 상품의 구매 이력 등을 분석할 때, 소프트 삭제를 통해 삭제된 데이터까지 고려하면 더 정확한 분석 결과를 얻을 수 있다.)
법적/규제적 요구사항 충족: 소프트 삭제를 통해 일부 산업/국가에서는 특정 데이터를 일정 기간 동안 보존하는 것이 법적으로 필요로 하는 요구사항을 충족할 수 있음
시스템 안정성 향상: 소프트 삭제를 사용하면 데이터 삭제로 인해 일부 기능이 제대로 작동하지 않는 문제를 방지할 수 있습니다.
: 데이터의 정확성, 일관성, 유효성을 보장하는 것으로 데이터베이스에서 데이터 무결성을 보장하는 것은 중요한 요소로, 이를 통해 데이터의 신뢰성을 유지하고 데이터 관리 오류를 최소화할 수 있다.
개체 무결성(Entity Integrity): 각 행이 고유하게 식별될 수 있도록 보장하는 것 즉, 테이블의 기본 키 값은 고유하고 NULL 값을 가질 수 없다.
참조 무결성(Referential Integrity): 외래 키를 사용하여 두 테이블 간의 관계를 설정할 때, 참조 무결성을 보장, 이는 외래 키 값이 반드시 참조하는 테이블의 기본 키 값과 일치하거나 NULL이어야 함을 의미, 이를 통해 잘못된 데이터가 데이터베이스에 들어가는 것을 방지
도메인 무결성(Domain Integrity): 특정 필드에 입력될 수 있는 값의 범위를 제한, 예를 들어, 나이 필드에는 음수가 들어갈 수 없고, 이메일 필드는 특정 형식을 따라야 한다는 것 이 도메인 무결성의 예시
사용자 정의 무결성(User-Defined Integrity): 비즈니스 규칙에 따라 정의되는 무결성, 예를 들어, 한 회사에서는 '고객이 주문을 하려면 먼저 회원가입을 해야 한다'는 규칙이 사용자 정의 무결성