슬라이드 1 - Tistory

Download Report

Transcript 슬라이드 1 - Tistory

데이터베이스
Ch5. 관계 데이터베이스 모델과 언어
우송대학교
IT경영학부
Ch 5. 관계 데이터베이스 모델과 언어
1. 관계 데이터 모델
(1) 관계 데이터 모델 정의
① 논리적인 데이터 모델에서 데이터간의 관계를 기본키(primary key)
와 이를 참조하는 외래키(foreign key)로 표현하는 데이터 모델
② 개체 집합에 대한 속성 관계를 표현하기 위해 개체를 테이블(table)
로 사용하고 개체 집합들 사이의 관계를 공통속성으로 연결하는
독립된 형태의 데이터 모델
③ Database management systems that process data from the
perspective of a relational database structure use a set of two
dimensional tables to represent the logical relationships among
the records of a user's files.
(관계 데이터베이스 구조의 관점에서 데이터를 처리하는 DBMS는
사용자 파일의 레코드 간의 논리적인 관계를 표현하기 위해 2차원
테이블의 집합을 사용한다.)
Page : 2
Ch 5. 관계 데이터베이스 모델과 언어
(2) 릴레이션
1) 릴레이션의 구조
Page : 3
Ch 5. 관계 데이터베이스 모델과 언어
① Entity(개체)와 Relation(관계)으로 구성
• 릴레이션 스킴과 릴레이션 인스턴스(릴레이션의 외연) 로 구성
• In relational database terminology, a row is called a tuple, a
column name is called an attribute, and the table is called a
relation.
(관계형 데이터베이스 용어에서 행은 튜플이라 하고, 열은 속성이라
하며, 릴레이션은 테이블이라고 한다.)
Page : 4
Ch 5. 관계 데이터베이스 모델과 언어
② 개체 (Entity)
• 데이터베이스가 표현하려고 하는 유형, 무형의 정보대상으로 존재하
면서 서로 구별될 수 있는 것
• 데이터베이스에 표현하려고하는 현실 세계의 대상체
• 유형, 무형의 정보로서 서로 연관된 몇 개의 속성으로 구성
• The basic object that the ER model represents as an entity, which
is a "thing" in the real world with an independent existence.
(실세계에서 독립적으로 존재하는 “사물” 인 객체를 ER모델에서는
개체(entity)라고 표현한다.)
Page : 5
Ch 5. 관계 데이터베이스 모델과 언어
③ 속성 (attribute)
• 개체의 특성을 기술
• 개체가 가지고 있는 성질을 나타냄
• 데이터의 가장 작은 논리적 단위로서 파일 구조상의 데이터 항목 또는
데이터 필드에 해당됨
• Each entity has particular attributes.
(각 개체는 특정한 속성들을 가진다.)
• The atomic attribute is called in that attributes are not divisible.
(더 이상 나누어지지 않는 속성을 원자속성이라 함)
Page : 6
Ch 5. 관계 데이터베이스 모델과 언어
④ 도메인 (domain)
• 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자(atomic) 값들의
집합
• 실제 애트리뷰트 값이 나타날 때 그 값의 합법여부를 시스템이 검사하
는 데에도 이용됨
• 표현되는 속성 값의 범위를 나타냄
• The collection of data items(fields) of the same type, in a relation.
(릴레이션에서, 동일한 타입의 데이터 항목(필드) 의 집합)
• Each simple attribute of an entity type is associated with a value
set, which specifies the set of values that may be assigned to
that attribute for each individual entity.
(개체 타입의 각 속성은 값들의 집합과 연관되는데, 각 개별 개체의 속
성에 속할 수 있는 값들의 집합을 나타낸다.)
Page : 7
Ch 5. 관계 데이터베이스 모델과 언어
⑤ 튜플 (Tuple)
• 데이터베이스의 관계모형에서 사용하는 테이블의 행을 구성하는
애트리뷰트 값들의 집합
• 테이블에서 행(레코드)과 유사
⑥ 관계 (relation)
• 개체간의 상호 작용을 나타냄
⑦ 차수 (degree)
• The number of attributes of its relation schema.
(릴레이션 스키마를 구성하는 속성의 개수)
⑧ 카디널리티 (cardinality)
• 릴레이션(relation) 에 포함되어 있는 튜플(tuple) 의 수
• The quantity of tuples in consist of the relation.
(릴레이션을 구성하는 튜플들의 수)
Page : 8
Ch 5. 관계 데이터베이스 모델과 언어
2) 릴레이션의 특성
① 한 릴레이션에 포함된 튜플들은 모두 상이함 (유일성을 가짐)
② 한 릴레이션에 포함된 튜플 사이에는 순서가 없음
③ 모든 속성 값은 원자값
④ 속성은 릴레이션 내에서 유일한 이름을 가짐
⑤ 속성들 간에는 순서가 없음
※ 용어 비교
관계데이터모델
파일시스템
비고
릴레이션( Relation)
파일 (File)
테이블 (Table)
튜플 (Tuple)
레코드 (Record)
행 (Row)
속성 (Attribute)
필드 (Field)
열 (Column)
릴레이션 차수 (Relation Degree)
속성의 개수
카디널리티 (Cardinality)
튜플의 개수
Page : 9
Ch 5. 관계 데이터베이스 모델과 언어
(3) 키 (KEY)
1) 키의 개념
데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 때
기준이 되는 속성
<학생>
학번
<수강>
과목명
학번
성명
주민등록번호
9984015 데이터베이스
9984015 홍길동 801010-1234567
9984015
0284029 임꺽정 820505-1357901
영어회화
0284029 데이터베이스
0284070 일지매 830717-1121110
0284070
알고리즘
0484002 성춘향 851225-2850610
0284070
한국사
0284070
운영체제
0484002
영어회화
Page : 10
Ch 5. 관계 데이터베이스 모델과 언어
2) 키의종류
① 기본키(primary key)
• 테이블의 유일한 식별자
• 테이블에서 기본키로 지정된 열(column)은 같은 값을 가질 수 없음
• 후보키 중에서 특별히 선정된 키로 중복값을 가질수 없음
• 후보키의 성질을 가짐 (유일성, 최소성(원자성) 모두 만족)
• NULL 값을 가질 수없음
예) <학생> 릴레이션에서 후보키인 학번이나 주민등록번호 중에서
선택하여 기본키 설정 가능
<수강> 릴레이션에서의 (학번, 과목명)
※ NULL : 데이터베이스에서 아직 알려지지 않거나 모르는 값으로서
해당 없음 등의 이유로 정보 부재를 나타내기 위해 사용하는
특수한 데이터값) 즉, 공백(space)도, 영(zero)도 아닌 부재
정보(missing information)를나타냄
Page : 11
Ch 5. 관계 데이터베이스 모델과 언어
② 기본키의특성
• NOT NULL
• UNIQUE 함
• 외래키로 참조됨
③ 외래키(foreign key) (참조키)
• 어떤 릴레이션 R1의 기본키의 값들과 일치함을 요구하는 다른 릴레이션
R2의 한 속성
• 외래키는 참조 릴레이션의 기본키와 동일한 키 속성을 가짐
예) <수강> 릴레이션의 학번은 <학생> 릴레이션의 기본키인 학번을 참조
하고 있으므로 <수강> 릴레이션의 학번이 외래키가 됨
Page : 12
Ch 5. 관계 데이터베이스 모델과 언어
④ 후보키(candidate key)
• 릴레이션에 있는 모든 튜플들을 유일하게 식별할 수 있는 하나 또는
몇 개의 애트리뷰트 집합
• 튜플을 유일하게 구분할 수 있는 최소 슈퍼키(하나의 속성으로 이루어
짐)
• 유일성과 최소성 모두 만족
예) <학생> 릴레이션의 학번, 주민등록번호
<수강> 릴레이션의(학번, 과목명)
⑤ 대체키(alternate key)
• 후보키가 둘 이상 되는 경우에 그중 에서 어느 하나를 선정하여 기본키
라 지정하면, 나머지 후보키들은 대체키가 됨(후보키-기본키= 대체키)
예) <학생> 릴레이션에서 학번이 기본키로 설정시 주민등록번호는
대체키가 됨
Page : 13
Ch 5. 관계 데이터베이스 모델과 언어
⑥ 슈퍼키 (super key)
• 유일성만 있고 최소성이 없는 애트리뷰트 집합
• 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키
예) <학생> 릴레이션의 학번, 주민등록번호, (학번 주민등록번호),
(학번, 성명, 주민등록번호) 등
※ 유일성 (Uniqueness) : 하나의 키 값으로 하나의 튜플만을 유일하
게 식별할 수 있어야 함
※ 최소성 (Minimality) : 키를 구성하는 속성 하나를 제거하면 유일하
게 식별할 수 없도록 꼭 필요한 최소의 속성으
로 구성되어야 함
Page : 14
Ch 5. 관계 데이터베이스 모델과 언어
(4) 무결성 (Integrity) (정확성, 일관성)
1) 권한이 부여된 사용자에 의하여 발생할 수 있는 데이터베이스의
오류를 방지하기 위함
2) 데이터베이스를 정확하고 유효하게 유지 (데이터의 정확성)
3) 제약조건에 의해 무결성 유지
4) 무결성 규정에는 규정이름, 검사 시기, 제약조건 등을 명시
5) 트리거는 트리거 조건이 만족되는 경우에 취해야 하는 조치를 명세
(트리거 : 특정 테이블의 데이터에 변경이 가해졌을 떄 자동으로 수행
되는 저장 프로시저)
6) The DBMS can maintain the integrity of the database by not
allowing more than one user to update the same record at the
same time.
(DBMS는 한 명 이상의 사용자가 동시에 같은 레코드를 수정하지 못
하게 함으로써 데이터베이스의 무결성을 유지할 수 있다.)
Page : 15
Ch 5. 관계 데이터베이스 모델과 언어
(5) 무결성 제약조건
1) 개체 무결성 제약조건
한 릴레이션의 기본키를 구성하는 어떠한 속성 값도 널(NULL) 값
이나 중복 값을 가질 수 없다는 것을 의미
2) 참조 무결성 제약조건
① 릴레이션 R1에 저장된 튜플이 릴레이션 R2에 있는 튜플을 참조
하려면 참조되는 튜플이 반드시 R2에 존재해야 한다는 데이터
무결성 규칙 (R2의 기본키를 R1의 외래키로 참조함)
② 릴레이션은 참조할 수 없는 외래키 값을 가질 수 없음
Page : 16
Ch 5. 관계 데이터베이스 모델과 언어
1. 다음의 논리적인 데이터 모델에서 데이터간의 관계를 기본키 (primary key) 와
이를 참조하는 외래키 (foreign key) 로 표현하는 데이터 모델은? (0010)
가. 관계형 데이터 모델
나. 네트워크 데이터 모델
다. 계층적 모델
라. 객체지향 데이터 모델
2. 다음 영문의 괄호에 적합한 database system은? (0405)
Database management systems that process data from the
perspective of a ( ) structure use a set of two dimensional
tables to represent the logical relationships among the records
of a user's files.
가. hierarchical database
나. network database
다. relational database
라. object-oriented database
3. 괄호 한 내용으로 옳게 짝지어진 것은? (0609)
In relational database terminology, a row is called a(an) ( ① ),
a column name is called a(an) ( ② ), and the ( ③ ) is called a
relation.
가. ① tuple
② table
③ attribute
나. ① table
② attribute
③ tuple
다. ① tuple
② attribute
③ table
라. ① attribute
② tuple
③ table
Page : 17
Ch 5. 관계 데이터베이스 모델과 언어
4. 데이터베이스의 구성 요소 중 데이터베이스가 표현하려고 하는 유형, 무형의
정보대상으로 존재하면서 서로 구별될 수 있는 것은? (0509)
가. relation
나. attribute
다. tuple
라. entity
5. 데이터베이스에 관련된 용어의 설명으로 옳지 않은 것은? (0403)
가. 튜플 (tuple) - 테이블에서 열에 해당된다.
나. 애트리뷰트 (attribute) - 데이터의 가장 작은 논리적 단위로서 파일 구조상의
데이터 항목 또는 데이터 필드에 해당한다.
다. 릴레이션 (relation) - 릴레이션 스킴과 릴레이션 인스턴스로 구성된다.
라. 도메인 (domain) - 애트리뷰트가 취할 수 있는 값들의 집합이다.
6. 다음은 무엇에 대한 설명인가? (0305)
Each simple attribute of an entity type is associated with
a value set, which specifies the set of values that may be
assigned to that attribute for each individual entity.
가. Domains
나. Schemas
다. Attributes
라. Tuples
Page : 18
Ch 5. 관계 데이터베이스 모델과 언어
7. What is the degree of a relation? (0010)
가. the number of occurrences n of its relation schema
나. the number of tables n of its relation schema
다. the number of attributes n of its relation schema
라. the number of key n of its relation schema
8. What is the quantity of tuples in consist of the relation? (0405)
가. Degree
나. Instance
다. Domain
라. Cardinality
9. 릴레이션의 특성에 대한 설명으로 잘못된 것은? (9910, 0605)
가. 한 릴레이션에 포함된 튜플들은 모두 상이하다.
나. 한 릴레이션에 포함된 튜플 사이에는 순서가 없다.
다. 한 릴레이션을 구성하는 애트리뷰트 사이에는 일정한 순서가 있다.
라. 모든 애트리뷰트 값은 원자값이다.
10. 릴레이션의 성질(property) 로 적합한 것은? (0406)
가. 중복된 튜플이 존재한다.
나. 튜플 간의 순서가 정의된다.
다. 속성 간의 순서가 정의된다.
라. 모든 속성 값은 원자값이다.
Page : 19
Ch 5. 관계 데이터베이스 모델과 언어
11. 다음 괄호에 적합한 내용은? (0205)
The (
) is a unique identifier for the table - that is,
a column with the property that no two rows of the table
contain the same value in that column.
가. alternate key
나. candidate key
다. foreign key
라. primary key
12. 데이터베이스 무결성에 관한 설명으로 옳지 않은 것은? (0603)
가. 개체 무결성 규정은 한 릴레이션의 기본 키를 구성하는 어떠한 속성 값도
널 (NULL) 값이나 중복 값을 가질 수 없음을 규정하는 것이다.
나. 무결성 규정에는 규정이름, 검사 시기, 제약 조건 등을 명시한다.
다. 도메인 무결성 규정은 주어진 튜플의 값이 그 튜플이 정의된 도메인에 속한
값이어야 한다는 것을 규정하는 것이다.
라. 트리거는 트리거 조건이 만족되는 경우에 취해야 하는 조치를 명세한다.
13. 다음 ( )에 적합한 단어는 ? (0403)
The DBMS can maintain the ( ) of the database by not allowing
more than one user to update the same record at the same time.
가. independence
나. integrity
다. redundancy
라. security
Page : 20
Ch 5. 관계 데이터베이스 모델과 언어
14. 한 릴레이션의 기본키를 구성하는 어떠한 속성값도 널(NULL) 값이나 중복 값
을 가질 수 없다는것을 의미하는 것은? (0205, 0203)
가. 개체 무결성 제약 조건
나. 참조 무결성 제약 조건
다. 보안 무결성 제약 조건
라. 정보 무결성 제약 조건
15. 릴레이션 R1 에 저장된 튜플이 릴레이션 R2 에 있는 튜플을 참조하려면 참조
되는 튜플이 반드시 R2에 존재해야 한다는 데이터 무결성 규칙은 ? (0403)
가. 개체 무결성 규칙(Entity Integrity Rule)
나. 참조 무결성 규칙(Referential Integrity Rule)
다. 영역 무결성 규칙(Domain Integrity Rule)
라. 트리거 규칙(Trigger Rule)
Page : 21