본문 바로가기
DB/MY-SQL

MYSQL 릴레이션

by ahhang0k 2021. 5. 24.

릴레이션?

수학의 집합

 

1) 릴레이션의 특징

  • 속성은 단일 값을 가진다. (콤마로 연결되면 안됨)
  • 속성은 서로 다른 이름을 가진다.
  • 한 속성의 값은 모두 같은 도메인 값을 가진다. (한 열의 타입은 같다)
  • 속성의 순서는 상관없다.
  • 릴레이션 내의 중복된 튜플은 허용하지 않는다. (추출할 떄는 한개만 추출하므로)
  • 튜플의 순서는 상관없다.

 

스키마 

관계 데이터베이스의 릴레이션이 어떻게 구성되는지 어떤 정보를 담고 있느지에 대한 기본적인 구조정의

 

1) 스키마의 요소

속성(어트리뷰트) : 릴레이션 스키마의 열

도메인 : 속성이 가질수 있는 값의 집합 (타입)

차수(디그리) : 속성의 개수

 

속성(어트리뷰트) = 열(컬럼) = 차수(디그리)

튜블 = 행(로우) = 카디널리티

 

무결성 제약조건

무결성(오류를 없애는것)

 

1) 키

  • 특정 튜플을 식별할 때 사용하는 속성 혹은 속성의 집합임 
  • 릴레이션은 중복된 튜플을 허용하지 않기 때문에 각각의 튜플에 포함된 속성들 중 어느 하나는 값이 달라야 함, 즉 키가 되는 속성은 반드시 값이 달라서 튜플들을 서로 구별할 수 있어야함.
  • 키는 릴레이션 간의 관계를 맺는데도 사용됨.

2) 기본키

여러후보 중 하나를 선정하여 대표로 삼는 키

후보키가 하나뿐이라면 그 후보키를 기본키로 사용하면 되고 여러 개라면 릴레이션의 특성을 반영하여 하나를 선택하면 됨.

 

2-1. 기본키 선정시 고려사항

릴레이션 내 튜플을 식별할 수 있는 고유한 값을 가짐

NULL값은 허용하지 않음.

키값의 변동이 일어나지 않아야함

최대한 적은 수의 속성을 가진 것

향후 키를 사용하는 데 있어서 문제가 없어야함

 

3) 외래키

외부테이블의 기본키를 가져다 쓰는 키

다른릴레이션의 기본키를 참조하는 속성을 말함. 다른 릴레이션의 기본키를 참조하여 관계 데이터 모델의 특징인 릴레이션간의 관계를 표현함

 

3.1 외래키의 특징

참조하고 참조되는 양쪽릴레이션의 도메인은 서로 같아야함.

참조되는 값이 변경되는 참조하는 값도 변경됨

NULL값과 중복값이 허용

 

도메인 무결성 제약조건

도메인 제약이라고도 하며, 릴레이션 내의 튜플들이 각 속성의 도메인에 지정된 값만 가져야 한다는 조건임.

ex) 주문 릴레이션에서 주문일자는 날짜 데이터만 사용

 

1. 개체 무결성 제약조건

기본키 제약이라고도 함

릴레이션은 기본키를 지정하고 그에 따른 무결성 원칙

즉, 기본키는 NULL값을 가져서는 안되며 릴레이션 내에 오직 하나의 값만 존재해야한다는 조건임

 

  • 삽입 : 기본키 값이 같으면 삽입이 금지됨
  • 수정: 기본키 값이 같거나 NULL로도 수정이 금지됨
  • 삭제 : 특별한 확인이 필요하지 않으며 즉시 수행함.

 

2. 참조 무결성 제약조건

외래키와 연결된 튜플이 삭제 될 떄 옵션

RESTRICTED 자식릴레이션에서 참조하고 있을 경우 부모 릴레이션의 삭제 작업을 거부함

CASCADE 자식 릴레이션의 관련 튜플을 같이 삭제 시켜라

DEFALT

NULL

 

댓글