정보처리산업기사_실기_기록용
[데이터베이스] 관계형 데이터베이스
칼퇴하는 한개발
2021. 9. 23. 23:20
반응형
[출처] 2020 시나공 기본서 정보처리산업기사 실기
1. 관계형 데이터 모델
데이터를 테이블 또는 릴레이션의 구조로 표현하는 논리적 데이터 모델
용어가 중요!

- 릴레이션 스키마
- 릴레이션의 이름, 각 속성의 이름과 타입, 그리고 속성 값의 도메인을 정의하는, 즉 다시 말해 릴레이션에 데이터를 넣을 수 있도록 하는 릴레이션 틀이라고 생각하기
- [고객] 릴레이션의 이름, 속성들의 집합(고객번호, 이름, 성별, 주소), 그리고 기본키에 대하여 정의한 내용
- 릴레이션 인스턴스 (개체)
- 릴레이션에 들어 있는 튜플들의 집합
- 고객번호가 001인 고객부터 004인 고객까지의 튜플들의 집합
- 속성
- [고객] 릴레이션에서 디그리는 4입니다.
- 디그리 = 속성의 수 = 차수
- 고객번호, 이름, 성별, 주소는 [고객] 릴레이션의 속성
- 튜플
- [고객] 릴레이션에서 카디널리티는 4입니다.
- 카디널리티 = 튜플의 수 = 기수
- 고객번호가 001, 002, 003, 004인 고객들의 각 속성에 대한 값을 표현한 행은 튜플
- 관계형 데이터 구조 : 릴레이션 (관계)
- 관계형 데이터 모델에서는 데이터를 원자 값으로 갖는 이차원 테이블로 표현, 릴레이션
- 릴레이션의 구조는 논리적 구조로 다양한 정렬 기준을 통하여 표현
- 릴레이션의 구조를 나타내는 릴레이션 스키마, 실제값들인 릴레이션 인스턴스로 구성됨
- 릴레이션의 열을 속성, 행을 튜플
- 릴레이션에서 하나의 속성이 취할 수 있는 같은 원자값들의 집합을 도메인이라고 함, 도메인은 실제 속성 값이 나타날 때 그 값의 합법 여부를 시스템이 검사하는 데에도 이용됨 ⇒ 성별 애트리뷰트의 도메인은 '남'과 '여'로 그 외의 값은 입력될 수 없음.
2. ER 모델을 관계형 데이터 모델로 변환
- 개념적 데이터 모델인 ER 모델을 논리적 데이터 모델인 릴레이션 스키마로 변환하는 것 : 매핑 룰(Mapping Rule)
변환하는 연습은 책으로!!
용어가 중요! 서술할 정도로!
3. 키의 개념 및 종류
키란 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때 기준이 되는 속성을 말함

- 슈퍼키
- 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키
- 릴레이션을 구성하는 모든 튜플 중 슈퍼키로 구성된 속성의 집합과 동일한 값은 나타나지 않음(유일성)
- 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 않음
- [학생] 릴레이션에서는 학번, 주민등록번호, (학번, 주민등록번호), (학번, 주민등록번호, 성명) 등이 슈퍼키
- 후보키
- 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하지 위해 사용되는 속성들의 부분집합
- 유일성과 최소성을 모두 만족
- [학생] 릴레이션에서 학번이나 주민등록번호는 유일성과 최송성을 만족하므로 후보키가 됨. [수강] 릴레이션에서는 (학번, 과목명)으로 조합해야 유일성과 최소성을 만족하기 때문에 (학번,과목명)으로 조합된 것이 후보키
- (학생,과목명)과 같이 2개 이상 필드를 조합하여 만든 키를 복합키
- 기본키
- 후보키 중에서 특별히 선정된 키로 중복된 값을 가질 수 없음
- 후보키의 성질을 갖음(유일성과 최소성을 가지며 튜플을 식별하기 위해 반드시 필요한 키)
- 기본키는 null값을 가질 수 없음
- [학생] 릴레이션에서 후보키인 학번이나 주민등록번호 중에서 선택하여 기본키로 설정할 수 있고, [수강] 릴레이션에서 (학번, 과목명)을 조합해서 기본키로 설정이 가능
- 학번이 [학생] 릴레이셔의 기본키로 정의되면 이미 입력된 학번 '050021'은 다른 튜플의 학번 속성 값으로 입력 안 됨
- 대체키
- 후보키 중에서 선정된 기본키를 제외한 나머지 후보키를 의미
- [학생] 릴레이션에서 학번이 기본키로 설정되면 주민등록번호는 대체키가 됨
- 외래키
- 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합
- 릴레이션 간의 관계를 표현
- 한 릴레이션에 속한 속성 A와 참조 릴레이션의 기본키인 B가 동일한 도메인 상에서 정의되었을 때의 속성 A를 외래키
- 참조 릴레이션의 기본키와 동일한 키 속성을 가짐
개념만이라도!!
4. 무결성
데이터베이스에 저장된 데이터 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 정확을 의미함.
즉, 저장된 데이터베이스에 잘못된 데이터가 없다는 것
- Null의 무결성 : 릴레이션의 특정 속성 값이 Null이 될 수 없음
- 고유(Unique) 무결성
- 릴레이션의 특정 속성에 각 튜플이 갖는 속성값들이 서로 달라야 함
- [학생] 릴레이션의 기본키인 학번 속성에 동일한 값이 존재하면 안 됨
- 도메인(Domain) 무결성
- 특정 속성의 값의 그 속성이 정의된 도메인에 속한 값이여야함
- [고객] 릴레이션의 성별 속성에 '남', '여'의 값만 존재해야 함
- 키(Key) 무결성 : 적어도 하나의 키가 존재해야 함
- 관계(Relationship) 무결성 : 튜플의 삽입 가능 여부, 릴레이션 간의 튜플 사이의 관계에 적절성 여부 지정
- 참조(Referential) 무결성
- 외래키 값은 null이거나 참조 릴레이션의 기본키 값과 동일해야 한다는 규정
- 개체(Entity) 무결성
- 기본 릴레이션의 기본키를 구성하는 어떤 속성도 null 일 수 없다는 규정
반응형