본문 바로가기

KOSTA : 클라우드 네이티브 애플리케이션 개발 전문가 양성과정

04/12 3일차 RDBMS 개념, SELECT, Sorting

728x90

무결성 제약 조건이란?

테이블에 부적절한 자료가 입력되는 것을 방지하기 위해 테이블 생성 시 각 컬럼에 적용하는 여러 가지 규칙

 

관계 데이터 모델의 개념

도메인 :

한 애트리뷰트에 나타날 수 있는 값들의 집합 예) ename에 나타날 수 있는 값들의 집합

 

차수(degree):

한 릴레이션(테이블)에 들어 있는 애트리뷰트(열)의 수,

유효한 릴레이션의 최소 차수는 1,

릴레이션의 차수는 자주 바뀌지 않음

 

카디날리티(cardinality)
릴레이션의 튜플(행) 수
유효한 릴레이션은 카디날리티 0을 가질 수 있음
시간이 지남에 따라 계속해서 변함

 

널값(null value) 
‘알려지지 않음’ 또는 ‘적용할 수 없음’을 나타내기 위해 널값을 사용
예: 사원 릴레이션에 새로운 사원에 관한 튜플을 입력하는데, 신입 사원의 DNO(부서번호)가 결정되지 않았을 수 있음
널값은 숫자 도메인의 0이나 문자열 도메인의 공백 문자 또는 공백 문자열과 다름
DBMS들마다 널값을 나타내기 위해 서로 다른 기호를 사용함 

 

릴레이션 스키마(relation schema)
릴레이션의 이름과 릴레이션의 애트리뷰트(열)들의 집합
릴레이션을 위한 틀(framework)
표기법
릴레이션이름(애트리뷰트1, 애트리뷰트2, ... 애트리뷰트N)
기본 키 애트리뷰트에는 밑줄 표시
 내포(intension)라고 함

 

 

릴레이션의 키

각 튜플을 고유하게 식별할 수 있는 하나 이상의 애트리뷰트(열)들의 모임
 슈퍼 키(superkey), 후보 키(candidate key), 기본 키(primary key), 대체 키(alternate key), 외래 키(foreign key)

 

기본키(PK:Primary Key)
한 릴레이션에 후보 키가 두 개 이상 있을 경우이들 중 하나를 기본 키로 선정
예: (카드번호, 주민등록번호) : 후보 키
        이 중에서 신용카드 번호를 기본 키로 선정
기본 키가 없는 경우에는 인위적인 키 생성
예: Sequence (자동증가번호)

 

후보키(CK:Candidate Key)
튜플을 고유하게 식별하는 최소한의 애트리뷰트들의 모임
예: (신용카드번호, 주소, 이름)
모든 릴레이션에는 최소한 한 개 이상의 후보 키가 있음
복합 키(composite key) :두 개 이상의 애트리뷰트로 이루어진 후보키
예: (학번, 과목번호)

 

대체키(AK:Alternate Key)
기본 키가 아닌 후보 키
예: (카드번호, 주민등록번호) : 후보 키
        이 중에서 신용카드 번호를 기본 키로 선정 
        주민등록번호는 대체키

 

외래 키(FK:Foreign Key)
어떤 릴레이션의 기본 키를 참조하는 애트리뷰트
관계 데이터베이스에서 릴레이션들 간의 관계를 나타내기 위해서 사용 (PK-FK) 

 

슈퍼키

한 릴레이션 내의 튜플을 고유하게 식별하는 애트리뷰트들의 집합
예: (신용카드번호, 주소) (주민등록번호)

 

 

 

무결성 제약조건

 

기본 키와 엔티티 무결성 제약조건
(entity integrity constraint)
Not NULL : 릴레이션의 기본 키를 구성하는 어떤 애트리뷰트도 널값을 가질 수 없음
Unique : 기본 키는 유일해야 함

 

외래 키와 참조 무결성 제약조건(referential integrity constraint)
참조 무결성 제약조건은 두 릴레이션의 연관된 튜플들 사이의 일관성을 유지하는데 사용
외래키(FK)는 어떤 릴레이션의 기본키(PK)이다.

 

 

selection,sorting sql.txt
0.00MB