Download presentation
Presentation is loading. Please wait.
Published byThomas Henry Modified over 9 years ago
1
Ch.2 Relational Data Model E. F. Codd (1969, 1970)
2
Ch.2 Relational Model 데이터베이스시스템 2 What to Learn Database System Overview Entity-Relationship diagram Relational Data Model Structure & Constraints SQL language How to use Commercial DBMS’s MS Access MS SQL Server Normalization ( 정규화 ) Transaction & Concurrency ( 동시성 )
3
Ch.2 Relational Model 데이터베이스시스템 3 What to Learn Relational Model Attribute, Domain, Relation Characteristics of a relation Key Candidate key, primary key, Foreign key Constraints Domain constraints, Key constraints Entity integrity constraints Referential integrity constrains
4
Ch.2 Relational Model 데이터베이스시스템 4 Relational data model Data models are different in Data representation structure ( 표현구조 ) Constraints ( 제약조건 ) Operators ( 연산자 ) Relational data model Users see the data as the collection of tables Domain constraint, key constraint, entity integrity constraint, referential integrity constraint Relational Algebra SQL operators (insert, delete, update, select)
5
Ch.2 Relational Model 데이터베이스시스템 5 Structure (1) relationtablefile tuplerowrecord attributecolumnfield NAMEST_NOADDRESSDEPTGRADE 송치윤 52015 사당동컴퓨터 3.3 김구완 53116 홍제동정보통신 3.1 최재석 56034 양재동정보관리 3.5 조미림 52042 역삼동컴퓨터 2.9 Student table
6
Ch.2 Relational Model 데이터베이스시스템 6 Structure (2) Attribute ( 속성 ) A characteristic of an object with which we describe the object Atomic vs. composite ( 학년, 학과 ), ( 주소, 전화번호, 주민등록번호 ) Single-valued vs. multi-valued ( 학년, 주민등록번호 ), ( 취미, 전화번호, 부양가족이름, 구독신문 ) Null valued different from zero-length string ( 빈문자열 ) unknown : address, birthdate not applicable : 군번, spousename
7
Ch.2 Relational Model 데이터베이스시스템 7 Structure (3) Domain the set of all possible values an attribute can have. Domain is a type. has a meaning 학생 ( 학번, 학생이름, 학과, 학년, 지도교수이름 ) 학생이름, 지도교수이름 은 동일한 도메인을 갖는다. 학번 2010011201, 2015011214 Operators are associated with the type 학번 + 학과 (???) 판매량 + 단가 (???), 학년 * 나이 (???) 판매량 * 단가 = 총매출액
8
Ch.2 Relational Model 데이터베이스시스템 8 Structure (4) Relation The type of relation R is R (A1, A2,..., An) and the corresponding domains for the attributes are D1, D2,..., Dn. Then the relation state( 상태 ) is a time-varying subset of the cartesian product of all domains. {a,b,c}X{A,B} = {(aA),(aB),(bA),(bB),(cA),(cB)} 학생 ( 학번, 학생이름, 학과, 학년, 지도교수이름 ) degree ( 차수 ) : the number of attributes cardinality : the number of tuples
9
Ch.2 Relational Model 데이터베이스시스템 9 Structure (5) NAMEST_NOADDRESSDEPTGRADE 송치윤 52015 사당동컴퓨터 3.3 김구완 53116 홍제동정보통신 3.1 최재석 56034 양재동정보관리 3.5 조미림 52042 역삼동컴퓨터 2.9 relation scheme ( 스키마 ) = relation intension ( 내포 ) = relation type = table heading relation state ( 상태, instance) = relation extension ( 외연 ) = relation value = table body
10
Ch.2 Relational Model 데이터베이스시스템 10 Structure (6) p.69
11
Ch.2 Relational Model 데이터베이스시스템 11 Structure (7) Properties of a relation There are no duplicate attributes (attribute names are unique within the relation). Attributes are unordered, left to right. There are no duplicate tuples (every tuple has a unique value). Tuples are unordered, top to bottom. Every tuple contains exactly one value for each attribute (atomic, single-valued).
12
Ch.2 Relational Model 데이터베이스시스템 12 Constraints (1) Key a group of attributes identifying a unique tuple in a relation ( 고유식별자 ) Candidate key ( 후보키 ) : unique and irreducible 학생 ( 학번, 이름, 주민등록번호, 학과 ) composite key ( 복합키 ) : a key with more than one attributes 수강 ( 학번, 과목번호, 성적 ) Super key : a super set of a candidate key Primary key ( 기본키 ) : a chosen candidate key (exactly one)
13
Ch.2 Relational Model 데이터베이스시스템 13 Constraints (2) Key Alternate key ( 대체키 ) : any candidate key which is not chosen as the primary key Foreign key ( 외래키, 참조키 ) : a group of attributes whose values are required to match values of some candidate key of some relation 학생 ( 학번, 이름, 주소, 전공, 교내친구학번 ) 수강 ( 학번, 과목번호, 성적 ) Employee (EmpNo, EmpName, DeptNo,ManagerNo)
14
Ch.2 Relational Model 데이터베이스시스템 14 Constraints (3) p.83
15
Ch.2 Relational Model 데이터베이스시스템 15 Constraints (4) Integrity constraints a boolean expression that is associated with some database and is required to evaluate at all times to be TRUE. Domain constraint ( 도메인 제약조건 ) inserted value of an attribute must be within the range. 학년 : 1 – 4. 학번 : 2005011xxx Key constraint ( 키 제약조건 ) There are no duplicate values for a key.
16
Ch.2 Relational Model 데이터베이스시스템 16 Constraints (5) Integrity constraints Entity integrity constraint ( 개체 무결성 제약조건 ) any element of a candidate key cannot have null value. 수강 ( 학번, 과목번호, 성적 ) Referential integrity constraint ( 참조 무결성 제약 조건 ) The database must not contain any unmatched foreign key values (null value is allowed) 학생 ( 학번, 이름, 전공, 복수전공, 교내친구학번 )
17
Ch.2 Relational Model 데이터베이스시스템 17 Constraints (6) Integrity constraints Referential action 학생 ( 학번, 이름, 전공, 복수전공, 교내친구학번 ) create table 수강 ( 학번 varchar(10) references 학생 ( 학번 ) on delete cascade, 과목번호 varchar(5) references 과목 ( 과목번호 ) on update cascade, 성적 integer check ( 성적 >=0 and 성적 <=100 ) primary key ( 학번, 과목 ) ); ON DELETE {CASCADE | NO ACTION} ON UPDATE {CASCASE | NO ACTION} restricted, nullify, default
18
Ch.2 Relational Model 데이터베이스시스템 18 Constraints (7) p.91
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.