1. Part 1. 데이터 모델
Chapter3. 관계형 모델
201515. 5. 10 STG 박하은
2. 기본 구조와 DB 스키마
• 관계형 데이터베이스란 테이블들의 모임을 뜻한다.
• 릴레이션(Relation) : 각 행의 일련의 값들 사이의 관계
• 테이블 : 관계들의 모임
• 속성(Attribute) : 열 제목, 컬럼
• 도메인 : 각 속성마다의 값들의 집합
• n-투플(a1, a2, …, a n) :
수학적 개념 중 하나
레코드와 비슷한 개념
n에 컬럼의 개수
a1, a2, …, a n에 각 컬럼의 이름
3. 기본 구조와 DB 스키마
TB_ETRIBER 테이블에서 name, id, pw 컬럼이 있을 때 각각에
대한 릴레이션이
name = {박하은1, 박하은2, 박하은3}
id = {phe1, phe2, phe3}
pw = {1111, 2222, 3333} 와 같다면
name x id x pw에 대한 릴레이션은
R = {(박하은1, 박하은2, 박하은3),
(phe1, phe2, phe3),
(1111, 2222, 3333)} 이며 그에 따른 스키마는
TB_ETRIBER-schema = (name, id, pw) 이다.
4. 키(key)
• 키 : 릴레이션에서 다른 데이터와 구분하기 위한 유일한 값을 가지
는 속성(컬럼) 또는 필드의 집합
• 키의 종류
- 후보키 : 유일성과 최소성을 만족하는 여러 컬럼들
기본키의 후보
*유일성 : 중복값이 없는 것
*최소성 : 식별을 위해 꼭 있어야하는 요소
- 기본키 : 후보키 중 선정되어 사용하는 키
- 대체키 : 후보키 중 기본키로 선택되지 않은 나머지 키
- 슈퍼키 : 복합키라고도 함
2개 이상의 열을 후보키로 만들어 기본키로써 사용
6. 질의어
• 사용자가 데이터베이스로부터 정보를 요청하는 언어
• 절차식 : 원하는 결과를 얻기 위해 어떤 연산을 수행할지 사용자가
시스템에 알려줌(관계 대수)
• 비절차식 : 사용자가 정보를 얻기 위한 구체적 수행 과정이 아닌 어
떤 정보를 원하는지에 대해서만 기술(투플관계해석, 도메인관계해석)
7. 관계 대수
• 절차식 언어의 종류
• 선택, 추출, 합집합, 차집합, 카티션곱, 재명명의 6가지 기본 연산자
• 연산자는 하나 이상의 릴레이션을 통해 새로운 릴레이션을 결과로
생성한다.
8. 관계 대수 – 선택 연산
• 표기법 : P(r)
• P에는 아래와 같은 식이 들어간다
<애트리뷰트> = <애트리뷰트> 또는 <상수>
>
<
• 여러가지 식을 (and), (or), (not)으로 연결하여 나타내기도 한
다.
9. 관계 대수 – 선택 연산
Ex)
릴레이션 r :
A=BD>5(r) :
A와 B가 같다 and D가 5보다 크다
A B C D
1 7
5 7
12 3
23 10
A B C D
1 7
23 10
10. 관계 대수 – 추출 연산
• 표기법 : A1, A2, …, A k(r)
• A1, A2, …, A k 는 속성이고 r은 릴레이션이다.
• 명시된 애트리뷰트를 중복값을 제외하여 나타낸다.
Ex)
릴레이션 r :
A, C(r) :
A와 C 속성의 값(중복 제외)
A B C
10 1
20 1
30 1
40 2
A C
1
1
1
2
A C
1
1
2
=
11. 관계 대수 – 합집합 연산
• 표기법 : r s
• r과 s는 같은 항(속성 수가 같음)을 가져야 한다.
• 속성의 도메인은 양립할 수 있어야 한다.
즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다.
Ex)
릴레이션 r,s :
r s :
r과 s의 값을 한 릴레이션으로 합한 값
A B
1
2
1
A B
2
3
A B
1
2
1
3
12. 관계 대수 – 차집합 연산
• 표기법 : r - s
• r과 s는 같은 항(속성 수가 같음)을 가져야 한다.
• 속성의 도메인은 양립할 수 있어야 한다.
즉 r의 a라는 속성은 s의 d라는 속성과 같은 타입의 값을 다룬다.
Ex)
릴레이션 r,s :
r - s :
r을 기준으로 s에 있는 값을 빼서 나타냄
A B
1
2
1
A B
2
3
A B
1
1
13. 관계 대수 – 카티션 곱 연산
• 표기법 : r x s
• r과 s는 다른 속성을 가져야 한다.
Ex)
릴레이션 r,s :
r x s :
r과 s를 합하여 나타낸 값
A B
1
2
C D E
10 +
10 +
20 -
10 -
A B C D E
1 10 +
1 10 +
1 20 -
1 10 -
2 10 +
2 10 +
2 20 -
2 10 -