데이터베이스시스템 #3 - Relational Model

juyeong-s·2021년 11월 2일
0

Data Model

DBMS에서 어떻게 데이터가 저장, 연결, 접근 되는지 보여주는데 사용된다.

Relation

이차원 테이블

Tuple

관계의 행

Attribute

관계의 열

Degree

관계에서 속성의 개수

  • 최소 1개
  • 자주 변하지 않는다.

Caldinality

관계에서 튜플의 개수

  • 최소 0개
  • 계속해서 변한다.

Table=Relation=File
Row=Tuple=Record
Column=Attribute=Field

NULL 값

'알 수 없음' 또는 '해당 사항 없음'을 나타내는 데 사용

  • 숫자0 값이랑 다르다.

Relation의 특징

  1. 데이터베이스의 관계는 유일한, 유니크한 이름을 가져야한다.
  2. 튜플의 순서는 중요하지 않다.
  3. 각 속성은 유일한, 유니크한 이름은 가져야한다.
  4. 속성의 순서는 중요하지 않다.

Key

관계에서 튜플을 식별할 수 있도록 도움을 주는 속성 또는 속성 집합이다.

Key의 타입

  • Super key : 관계에서 튜플을 고유하게 정의하는 속성 또는 속성 집합
    • Primary키를 적어도 하나 포함하는 집합이나 Primary 키 자체
    • {StudentNumber}, {StudentnNumber, Name}, {PhoneNumber}, {PhoneNumber, Name}
  • Candidate key : 고유한 슈퍼 키 속성의 가장 작은 부분집합
    • {StudentNumber}, {PhoneNumber}
  • Primary key : Candidate key 중의 하나 / 언더라인으로 표시
    • {StudentNumber} or {PhoneNumber}
  • Alternate key : Candidate key중 Primary key가 아닌 것
    • {PhoneNumber} or {StudentNumber}
  • Foreign key : relation사이의 관계를 나타내는 데 사용 된다.
    3가지 타입
    • 다른 relation을 참조하는
    • 자기 자신 relation을 참조하는
    • primary키의 합성

무결성 제약조건

엔티티 무결성 제약조건

  1. 모든 relation은 primary 키를 가져야 한다.
  2. primary key속성은 unique 해야 한다.
  3. primary key속성은 NULL이 될 수 없다.
    -> 왜? primary키는 테이블의 튜플을 식별하는 데 사용되는데, 만약 null값이라면 튜플을 식별할 수 없기 때문에.

도메인 무결성 제약조건

  1. 속성의 데이터 타입이 정의되어야 한다.
  2. 각 튜플은 하나의 속성에 대해 정확히 하나의 데이터 값을 가져야 한다.
  3. 한 속성 내의 모든 값은 데이터 타입이 같아야 한다.

참조적 무결성 제약조건

  1. A relation의 foreign 키가 B relation의 primary 키를 참조하고 있다면, A relation의 모든 foreign 키는 B relation에서 사용할 수 있어야 한다.
profile
frontend developer

0개의 댓글