본문 바로가기

데이터베이스

키(key), 무결성 제약조건

  키(key)

릴레이션에서 튜플들을 유일하게 구별하는 속성 또는 속성들의 집합.

 

▶ 키의 특성

유일성: 데이터베이스를 구성하는 릴레이션 스키마의 모음.

최소성: 꼭 필요한 최소한의 속성들로만 키를 구성.

 

▶ 키의 종류

① 기본키(primarty key) 

후보키 중에서 기본적으로 사용하기 위해 선택한 키.

[예] 고객 릴레이션의 기본키 : 고객아이디

 

 

 

② 후보키(cardidate key)

유일성과 최소성을 만족하는 속성 또는 속성들의 집합. 슈퍼키와 기본키를 제외한 (거의)모든 키.

[예] 고객릴레이션의 후보키 : 고객아이디, (고객이름, 주소) 등

 

③ 대체키(alternte key)

기본키로 선택되지 못한 후보키.

[예] 고객 릴레이션의 대체키 : (고객이름, 주소)

 

④ 슈퍼키(super key)

유일성을 만족하는 속성 또는 속성들의 집합.

[예] 고객 릴레이션의 슈퍼키 : 고객

 

⑤ 외래키(foreign key)

다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합. 릴레이션들 간의 관계를 표현

· 참조하는 릴레이션 : 외래키를 가진 릴레이션 (level_num)

· 참조되는 릴레이션 : 외래키가 참조하는 기본키를 가진 릴레이션 (m_level)

 

 

 

기본키는 m_id 로 설정하였고, 외래키는 m_level 은 위의 테이블(tb_member_level)에서 level_num을 가져온다.

 


  무결성 제약조건(Integrity Constraint)

▶ 무결성 제약조건의 의미

- 무결성 : 데이터의 결함이 없는 상태, 즉 정확하고 유효하게 유지하는 것.

- 무결성 제약조건 : 데이터의 무결성을 보장하고 일관된 상태로 유지하기 위한 규칙.

 

▶ 무결성 제약조건의 종류

① 개체 무결성 제약 조건

기본키를 구성하는 모든 속성은 널 값을 가질 수 없는 규칙.

 

 

② 참조 무결성 제약 조건

외래키는 참조할 수 없는 값을 가질 수 없는 규칙.

 

 

수강테이블의 학번에 학생테이블 학번을 참조할 수 없다.

수강테이블에서 학생테이블을 참조할 수 없다.

하지만,다음과 같이 외래키의 속성이 널 값을 가진다고 해서 참조 무결성을 위반한 것은 아니다.

 

 

단, null의 값을 가진 속성 학번이 기본키가 아니어야 한다.

 

 

'데이터베이스' 카테고리의 다른 글

데이터베이스 정규형  (0) 2020.04.06
데이터베이스 정규화  (0) 2020.04.06
데이터베이스 설계  (0) 2020.04.06
데이터 모델링과 관계  (0) 2020.04.06
데이터베이스  (0) 2020.03.31