[1일 1CS] 데이터베이스의 무결성 제약조건의 정의와 필요성

그렘린·2022년 7월 21일
0

1일 1CS

목록 보기
3/6

무결성은 뭔데..?

데이터베이스 무결성이 뭔지 알려면 무결성이 뭔지 먼저 알아야하지 않을까?

🧐무결성이란

보안의 3대 요소 중 하나로 (기밀성, 무결성, 가용성) 원치 않는 의도에 의한 변조와 파괴를 막는 것을 의미한다. 정복의 정확성, 완전성을 보장한다는 원칙이다.
무결성을 위협하는 공격으로는 Modification(변경), Masquerading(가장), Replaying(재전송), Repudiation(부인)이 있고 이를 보존하기 위한 활동으로는 접근제어와 메시지 인증이 있다.

그렇다면 데이터 무결성 제약조건은?

데이터베이스의 정확성, 일관성을 보장하기 위해 저장, 삭제, 수정 등을 제약하기 위한 조건을 의미한다.

주 목적으로는 데이터베이스 상태를 일관되게 유지하고 데이터의 내용에 변화가 없게끔 하는 것이다.

종류

  1. 개체 무결성
    각 릴레이션에서 기본키를 구성하는 속성은 NULL값 또는 중복 값을 가질 수 없다

  2. 참조 무결성
    각 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없다.

  3. 도메인 무결성
    속성의 값은 당연히! 도메인에 포함된 값이여야 한다.

  4. 고유 무결성
    특정 속성에 고유한 값을 갖도록 정의했다면 릴레이션의 튜플들은 중복되는 값이 존재할 수 없다.

  5. NULL 무결성
    릴레이션의 특정 속성 값은 NULL이 될 수 없다.

  6. 키 무결성
    각 릴레이션은 적어도 하나 이상의 키가 있어야 한다.


참고 : https://iingang.github.io/posts/DB-Integrity-constraint/#:~:text=%EB%AC%B4%EA%B2%B0%EC%84%B1%20%EC%A0%9C%EC%95%BD%EC%A1%B0%EA%B1%B4%20%EC%9D%B4%EB%9E%80%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4,%EB%90%98%EA%B2%8C%20%EC%9C%A0%EC%A7%80%ED%95%98%EB%8A%94%20%EA%B2%83%EC%9E%85%EB%8B%88%EB%8B%A4.

0개의 댓글