[영상후기] 관계형 데이터베이스(relational database)개념과 relation, primary key(기본키), foreign key(외래키), constraints를 알아봅시다

박철현·2023년 3월 19일
0

영상후기

목록 보기
43/160

movie

  • set : 서로 다른 elements를 가지는 collection (중복x)
    -> 하나의 set에서 엘리먼트 순서 중요하지 않음

  • 도메인 : 값들의 집합(더이상 나눌 수 없음)

  • relation : 튜플의 집합

  • 릴레이션 스키마 : 릴레이션의 구조
    --> 릴레이션 이름과 어트리뷰트 리스트로 표기
    --> ex) STUDENT(id, name, grade, major)
    --> 어트리뷰트와 관련된 constraints도 포함

  • degree of relation(차수) : relation schama에서 attributes의 수

  • relational database : relational data model에 기반하여 구조화된 database
    -> 여러개의 relation으로 구성

  • relation 특징들
    1) 중복된 tuple 가질 수 없음
    2) 튜플을 식별하기 위해 attribute의 부분 집합을 key로 설정한다.
    3) 튜플의 순서는 중요하지 않음 -> 릴레이션 정의할때 정의 x -> 순서 정하는건 자유
    4) 하나의 링레이션에서 attribute의 이름 중복 x
    5) attribute 순서 중요 x
    6) attribute의 값은 atomic 해야 함(composite attribute 허용 x)
    --> 서울시 강남구 청담동 -> 나눠줘야함

  • NULL의 의미
    1) 값이 존재하지 않는다.
    2) 값이 존재하나 아직 그 값이 무엇인지 알지 못한다.
    3) 해당 사항과 관련이 없다.
    --> 중의적 의미를 가질 수 있어 최대한 쓰지 않는게 좋음

  • superkey : relation에서 tuple을 unique하게 식별할 수 있는 attributes set
    --> 전체 셋포함(모두 속성 가지면 유니크하기 떄문), (이름, 등번호, 팀아이디), (이름, 번호), 번호 등

  • candidate key : 어느 한 attribute라도 제거하면 유니크하게 식별할 수 없는 슈퍼 키
    -> ket or minimal superkey
    -> ex) {id}, {team_id, back_number}

  • primary key : relation에서 튜플을 유니크하게 식별하기 위해 선택된 candidate key
    -> 보통 애트리뷰트 키가 적은것을 선택

  • 유니크 키 : 프라이머리 키가 아닌 candidate key (alternate key)

  • foreign key : 다른 릴레이션의 PK를 참조하는 attributes set

  • constraints : 릴레이셔널 데이터베이스에서 릴레이션들이 언제나 항상 지켜야 하는 제약사항
    1) implicit constraints : relational data model 자체가 가지는 constraints
    --> relation은 중복된 tuple을 가질 수 없다
    --> relation 내에서는 같은 이름의 attribute를 가질 수 없다.

    2) schema-based constraints : 주로 DDL을 통해 스키마에 직접 명시할 수 있는 constraints
    --> explit constraints
    2-1) domain constraints : attribute의 값은 해당 어트리뷰트에 도메인에 속한 값이어야 한다.

    2-2) ket constraints : 서로 다른 tuple은 같은 값의 키를 가질 수 없다

    2-3) NULL value constraint : 속성이 NOY NULL로 명시됐다면 NULL을 값으로 가질 수 없다

    2-4) entity integrity constraint : primary key는 value에 NULL을 가질 수 없다.

    2-5) referential integrity constraint : FK와 PK와 도메인이 같아야 하고 PK에 없는 values를 FK가 값으로 가질 수 없다.

profile
비슷한 어려움을 겪는 누군가에게 도움이 되길

0개의 댓글

관련 채용 정보