[DB] RDBMS의 기본

data_buddha·2024년 11월 12일
0

테이블의 구성 : 필드와 레코드

  • 테이블 내의 특정 레코드를 식별할 수 있는 필드의 집합은 "키"라고 함
    • 레코드의 식별뿐만 아니라 테이블 간의 참조에도 사용

  • 테이블의 레코드를 식별할 수 있는 하나 이상의 필드를 "키"라고 함
  • 테이블의 접근 속도를 높이기 위해서도 사용됨
  • 후보키
    • 테이블의 한 레코드를 식별하기 위한 필드의 최소 집합
    • 특정 레코드를 유일하게 식별한다는 점에서 "유일성을 갖추었다"라고 표현
    • 불필요한 필드가 키에 포함되어 있지 않고, 최소한의 정보로 레코드를 식별한다는 점에서 "최소성을 갖추었다"라고 표현
    • 즉, 후보 키는 "유일성"과 "최소성"을 모두 만족하는 키
    • 기본 키들이 될 수 있는 후보
  • 복합 키
    • 두 필드 이상으로 구성된 후보 키를 복합 키
  • 슈펴 키
    • 레코드를 식별하기 위한 필드로 "최소 집합"이 아닌 그저 "필드의 집합"은 슈퍼 키라고 함
    • 유일성은 만족하지만, 최소성은 만족하지 않음
    • 따라서, 불필요한 필드가 포함될 수 있음
  • 기본 키
    • 중복된 값 x
    • 반드시 값이 존재해야 함
    • 유일성과 최소성을 만족
  • 대체 키
    • 기본 키가 아닌 후보 키
  • 외래 키
    • 다른 테이블의 기본 키를 참조하는 필드
    • 테이블 간의 참조 관계를 형성할 때 사용하는 키

테이블의 관계

일대일 대응 관계

  • 하나의 레코드가 다른 테이블의 레코드 하나에만 대응되는 경우

일대다 대응 관계

  • 하나의 레코드가 다른 테이블의 여러 레코드와 대응될 수 있는 경우

다대다 대응 관계

  • 한 테이블의 여러 레코드가 다른 테이블의 여러 레코드와 대응되는 경우
  • 다대다 대응 관계는 일반적으로 중간 테이블을 수반
    • 중간 테이블을 통한 다대다 대응 관계는 중간 테이블에 대한 일대다 대응이 두 번 이뤄진 것과 같음

무결성 제약 조건

  • 무결성 : 일관되며 유효한 데이터의 상태
    • 즉, 무결성 제약 조건이란 DB에 저장된 데이터의 일관성과 유효성을 유지하기 위해 마땅히 지켜야 하는 조건
  1. 도메인 제약 조건
    • 테이블이 가질 수 있는 필드 타입과 범위에 대한 규칙
    • 각각의 필드 타입은 원자 값을 가져야함
    • 지정된 필드 타입을 준수해야 함
  • 원자 값?
    • 더 이상 쪼갤 수 없는 단일한 값을 의미
    • 테이블의 각 필드 데이터는 더 이상 쪼갤 수 없는 단일한 값이어야 함
  1. 키 제약 조건

    • 레코드를 고유하게 식별할 수 있는 키로 지정된 필드에 중복된 값이 존재해서는 안된다는 제약 조건
  2. 엔티티 무결성 제약 조건

    • 기본 키로 지정한 필드는 고유한 값이어야 하며, NULL이 되어서는 안된다는 규칙
    • 기본 키와 관련된 제약조건이므로 "기본 키 제약 조건"이라고도 불림
    • 즉, 기본 키가 갖추어야 할 조건을 나타냄
  3. 참조 무결성 제약 조건

    • 외래 키를 통해 다른 테이블을 참조할 때 데이터의 일관성을 지키기 위한 제약 조건
    • 외래 키는 참조하는 테이블의 기본 키와 같은 값을 갖거나 NULL 값을 가져야 한다는 규칙
    • 외래 키와 관련된 제약 조건이므로 "외래 키 제약 조건"이라고도 불림
profile
来日方长 : 앞길이 구만리 같다; 앞길이 희망차다. 장래의 기회가 많다.

0개의 댓글