[정보처리기사실기] 키와 무결성 제약 조건

    반응형

    2과목. 데이터베이스 구축

    📒 07. 키와 무결성 제약 조건


    1. 속성(컬럼)

    (1) 속성의 개념

    • 릴레이션에서 정보의 최소 단위로, 각 열을 통해 데이터의 상태나 특성을 나타냄
    • 컬럼 = 속성(Attribute)

    (2) 속성의 특징

    • 각 속성은 필요한 정보로 구성되며, 하나의 속성에는 하나의 값만 가질 수 있음
    • 여러 값이 필요한 경우 별도의 테이블로 분리

    (3) 속성의 분류

    • a) 기본 속성
      - 업무로부터 추출한 모든 속성
    • b) 설계 속성
      - 코드성 데이터, 릴레이션 식별용 일련번호
    • c) 파생 속성
      - 다른 속성에 영향을 받아 발생하는 속성(ex. 합계, 재고 등)

    (4) 세부 의미에 따른 분류

    • a) 단순 속성(Simple Attribute)
      - 나이, 성별같이 다른 속성들로 구성될 수 없는 단순한 속성
    • b) 복합 속성(Composite Attribute)
      - 주소와 같이 시, 구, 동처럼 여러 세부 속성들로 구성될 수 있는 속성

    (5) 구성 방식에 따른 분류

    • a) PK(Primary Key) 속성
      - 릴레이션에서 튜플을 유일하게 구분할 수 있는 속성
    • b) FK(Foreign Key) 속성
      - 다른 릴레이션과의 관계에서 참조하고 있는 속성
    • c) 일반 속성
      - 릴레이션에 포함된 속성 중, PK와 FK가 아닌 속성

     

    2. 키 종류

    (1) 키(Key)의 개념

    • 키(Key)는 데이터베이스에서 튜플을 식별하고 구별하는 데 사용되는 컬럼

    (2) 키(Key)의 종류

    • a) 슈퍼키(Super Key)
      - 튜플을 유일하게 식별할 수 있는 속성들의 집합으로, 유일성만 만족하면 됨
      - 튜플을 식별할 수 있는 모든 조합 포함
    • b) 후보키(Candidate Key)
      - 릴레이션에서 튜플을 유일하게 식별할 수 있는 속성들의 집합
      - 반드시 하나 이상 존재해야 하며, 유일성과 최소성을 둘 다 만족해야 함
      - 최소한의 키 조합으로 식별할 수 있어야 함
    • c) 기본키(Primary Key)
      - 후보키 중 선택한 주키(Main Key)
      - 특정 튜플을 유일하게 식별할 수 있음
      - NULL값과 중복된 값을 허용하지 않음
    • d) 대체키(Alternate Key)
      - 둘 이상의 후보키가 있을 때, 기본키로 선택되지 않은 나머지 키
    • e) 외래키(Foreign Key)
      - 다른 릴레이션의 기본키를 참조하는 속성
      - 릴레이션 간 참조 관계를 표현하는 데 사용되며, 참조 무결성 조건을 만족해야 함

     

     

    3. 데이터베이스 무결성 종류

    (1) 개체 무결성(Entity Integrity)

    • 모든 릴레이션은 중복되지 않는 고유한 값인 기본키를 가져야 함
    • 기본키는 NULL값을 가질 수 없음

    (2) 참조 무결성(Referential Integrity)

    • a) 의미
      - 외래키는 NULL이거나 유효한 참조 릴레이션의 기본키와 일치해야 함
      - 참조하고 있는 테이블의 기본키의 값을 가져와야 함
    • b) 제약조건
        ① 제한(Restrict) : 문제의 연산을 거부, 참조된 튜플을 삭제 시 삭제를 거부
        ② 연쇄(Cascade) : 참조된 튜플 삭제 시, 참조하는 튜플도 함께 삭제
        ③ 널값(Nullify) : 참조된 튜플 삭제 시, 참조하는 튜플의 외래키를 NULL로 설정
        ④ 기본값(Default) : NULL 대신 기본값 등록

    (3) 도메인 무결성(Domain Integrity)

    • 모든 속성 값은 정의된 도메인에 속해야 함
    • 해당하는 값의 범위에 포함되어야 함 (ex. 성별 컬럼일 때 남, 여만 들어가야 함)

    (4) 고유 무결성(Unique Integrity)

    • 릴레이션의 특정 속성 값은 서로 달라야 함

    (5) 키 무결성(Key Integrity)

    • 각 릴레이션은 적어도 하나의 키를 가져야 함

    (6) 릴레이션 무결성(Relation Integrity)

    • 삽입, 삭제, 갱신 등의 연산은 릴레이션의 무결성을 해치지 않도록 수행되어야 함

     

     

    참고자료

    흥달쌤,  '흥!나게 합격 달성! 2024 정보처리기사 실기 클래스'
     

    1억뷰 N잡

    [1회 연장 포함] 흥!나게 합격 달성! 2024 정보처리기사 실기 클래스

    www.njobler.net

    반응형

    댓글