데이터베이스

데이터베이스 기초 2일차 - 1

박강원입니다 2023. 3. 8. 19:51

잘못된 부분이 있을 수 있음

 

관계 데이터 모델

: 데이터베이스의 논리적 구조가 2차원 테이블 형태인 모델

 

: 관계 데이터를 만들때 필요한 것은 '키', 투플을 유일하게 식별할 수 있는 값

 

기본키(primary key)

: 가장 최소한의 속성을 가진 키

기본키의 특징

    • 후보키가 하나뿐이라면 그 후보키를 기본키로 사용하면 되고, 여러 개라면 릴레이션의 특성을 반영하여 하나를 선택하면 됨
    • 기본키만으로 투플을 식별할 수 있음
    • 릴레이션 내 투플을 식별할 수 있는 고유한 값을 가져야 함
    • NULL 값은 허용하지 않음
    • 릴레이션 스키마를 표현할 때 기본키는 밑줄을 그어 표시해야한다
    • 릴레이션 내에 오직 하나의 값만 존재해야 한다

예시) >>>고객(고객번호, 이름, 주민번호, 주소, 핸드폰)

 

NULL 과 0은 다르다 (0은 0이라는 값이 있는 것임)

 

후보키

: 기본키가 될 수 있는 후보, 투플을 유일하게 식별할 수 있는 속성의 최소 집합(유일함)


대체키

: 후보키에서 기본키로 선정되지 않은 키 



왜래키 

: 릴레이션과 릴레이션을 연관짓게 해주는 것, 관계 데이터 모델의 릴레이션 간의 관계를 표현함(같은 말)

 

왜래키의 특징

  • NULL 값과 중복 값을 허용한다


슈퍼키

: 키가 될 수 있는 것들(유일하지 않음), 투플을 유일하게 식별할 수 있는 속성의 집합, 투플을 유일하게 식별할 수 있는 값이면 모두 슈퍼키가 될 수 있음

 

대리키 (설명을 받지 않아 패스, 개념은 적어놓는다)

: 기본키가 보안을 요하거나, 여러 개의 속성으로 구성되어 복잡하거나, 마땅한 기본키가 없을 때는 일련번호 같은 가상의 속성을 만들어 기본키로 삼는다. 이것이 대리키

 

"기본키, 후보키, 왜래키"를 기억하자!

 

무결성 제약조건

  • 데이터에 결점이 없게끔 제한을 걸어주는 것

데이터 무결성(integrity)

  • 데이터베이스에 저장된 데이터의 일관성과 정확성을 지키는 것을 말함.

 

도메인 무결성 제약조건

  • 도메인 제약(domain constraint)이라고도 하며, 릴레이션 내의 투플들이 각 속성의 도메인에 지정된 값만을 가져야 한다는 조건
  • SQL 문에서 데이터 형식(type), 널(null/not null), 기본 값(default), 체크(check) 등을 사용하여 지정할 수 있음.

개체 무결성 제약조건

  • 기본키 제약(primary key constraint)이라고도 함. 
  • 릴레이션은 기본키를 지정하고 그에 따른 무결성 원칙 즉, 기본키는 NULL 값을 가져서는 안 되며 릴레이션 내에 오직 하나의 값만 존재해야 한다는 조건임

참조 무결성 제약조건

  • 외래키 제약(foreign key constraint)이라고도 하며, 릴레이션 간의 참조 관계를 선언하는 제약조건
  • 자식 릴레이션의 외래키는 부모 릴레이션의 기본키와 도메인이 동일해야 하며, 자식 릴레이션의 값이 변경될 때 부모 릴레이션의 제약을 받는다는 것

요약 : 내가 참조해오는 테이블의 키는 기본키여야만 한다. 이때 사용하는 키는 왜래키

 

제약조건 = 제한조건