금오공대 컴퓨터공학전공 강의자료

Similar documents
금오공대 컴퓨터공학전공 강의자료

RDB개요.ppt

Microsoft PowerPoint - 27.pptx

금오공대 컴퓨터공학전공 강의자료

<4D F736F F F696E74202D E DB0FCB0E820BBE7BBF3BFA120C0C7C7D120B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20BCB3B0E8>

금오공대 컴퓨터공학전공 강의자료

untitled

금오공대 컴퓨터공학전공 강의자료

The Relational Model

슬라이드 제목 없음

금오공대 컴퓨터공학전공 강의자료

Microsoft PowerPoint - QVIZMVUMWURI.pptx

윈도우시스템프로그래밍

금오공대 컴퓨터공학전공 강의자료

DIY 챗봇 - LangCon

public key private key Encryption Algorithm Decryption Algorithm 1

Microsoft PowerPoint - ch03ysk2012.ppt [호환 모드]

03-01 데이터모델링과데이터모델의개념 개체-관계모델 논리적데이터모델

10.ppt

PowerPoint 프레젠테이션

DBMS & SQL Server Installation Database Laboratory

Microsoft PowerPoint - AC3.pptx

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

<4D F736F F F696E74202D E20B0FCB0E820B5A5C0CCC5CD20B8F0B5A8B0FA20B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20C1A6BEE020C1B6B0C7>

thesis

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

윈도우시스템프로그래밍

12È«±â¼±¿Ü339~370

Microsoft PowerPoint - Database.ppt

182 동북아역사논총 42호 금융정책이 조선에 어떤 영향을 미쳤는지를 살펴보고자 한다. 일제 대외금융 정책의 기본원칙은 각 식민지와 점령지마다 별도의 발권은행을 수립하여 일본 은행권이 아닌 각 지역 통화를 발행케 한 점에 있다. 이들 통화는 일본은행권 과 等 價 로 연

λx.x (λz.λx.x z) (λx.x)(λz.(λx.x)z) (λz.(λx.x) z) Call-by Name. Normal Order. (λz.z)

Orcad Capture 9.x

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT

Microsoft PowerPoint Predicates and Quantifiers.ppt

12. 데이타베이스 설계

ETL_project_best_practice1.ppt

슬라이드 제목 없음

DBPIA-NURIMEDIA

금오공대 컴퓨터공학전공 강의자료

step 1-1

216 동북아역사논총 41호 인과 경계공간은 설 자리를 잃고 배제되고 말았다. 본고에서는 근세 대마도에 대한 한국과 일본의 인식을 주로 영토와 경계인 식을 중심으로 고찰하고자 한다. 이 시기 대마도에 대한 한일 양국의 인식을 살펴볼 때는 근대 국민국가적 관점에서 탈피할

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL

01-OOPConcepts(2).PDF

금오공대 컴퓨터공학전공 강의자료

歯kjmh2004v13n1.PDF

인니 내지-00-5


Microsoft PowerPoint - 26.pptx

UML

BSC Discussion 1

PowerPoint Template

<3130C0E5>

서론 34 2

CONTENTS SUMMARY PART 1 MARKET MARKET STRATEGY MARKET ISSUE MARKET ISSUE PART 2 CREDIT CREDIT ISSUE CREDIT ISSUE CREDIT ISSUE CREDIT ISSUE CREDIT STRA

Page 2 of 6 Here are the rules for conjugating Whether (or not) and If when using a Descriptive Verb. The only difference here from Action Verbs is wh

- 2 -

사용시 기본적인 주의사항 경고 : 전기 기구를 사용할 때는 다음의 기본적인 주의 사항을 반드시 유의하여야 합니다..제품을 사용하기 전에 반드시 사용법을 정독하십시오. 2.물과 가까운 곳, 욕실이나 부엌 그리고 수영장 같은 곳에서 제품을 사용하지 마십시오. 3.이 제품은

Page 2 of 5 아니다 means to not be, and is therefore the opposite of 이다. While English simply turns words like to be or to exist negative by adding not,

Microsoft PowerPoint - 사본 - OAS09-사무자동화 기술(DB).ppt

SQL

K7VT2_QIG_v3

Microsoft PowerPoint Relations.pptx

5장 SQL 언어 Part II

03-최신데이터

Microsoft Word - Software Project Database Design_ver1.01_.docx

Microsoft Word - Application for Exemption from Schooling _Confidential__KOREAN

DBPIA-NURIMEDIA

lecture01

VENUS Express 사용자 매뉴얼

내용 3.1 관계모델의개념 3.2 관계제약조건과관계형데이타베이스스키마 3.3 갱신연산과트랜잭션그리고제약조건의위반처리 3.4 요약 Ch6 Fundamentas of Database Systems 2

강의 개요

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

02. 특2 원혜욱 지니 3.hwp

... 수시연구 국가물류비산정및추이분석 Korean Macroeconomic Logistics Costs in 권혁구ㆍ서상범...

산은매거진13

슬라이드 제목 없음

I&IRC5 TG_08권

2011´ëÇпø2µµ 24p_0628

p 19; pp 32 37; 2013 p ㆍ 新 興 寺 大 光 殿 大 光 殿 壁 畵 考 察 ; : 2006

201502IC1AP-1 DB 구축 2015 학년도 2 학기 프로젝트특강보고서 프로젝트명 : DB 구축 ( DB ) 2015 년 11 월 20 일 지도교수 : 황치곤교수님 학과 : 정보통신공학과 1팀제출자 : 역할성명학번 조장 조재석 조원 송찬호 2

10송동수.hwp

Database Applications - 멀티미디어 데이터베이스 – 제6장 텍스트 색인과 검색

Chapter 1: 데이터베이스시스템개관

?

Buy one get one with discount promotional strategy

PJTROHMPCJPS.hwp



example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

금오공대 컴퓨터공학전공 강의자료


Gray level 변환 및 Arithmetic 연산을 사용한 영상 개선


Microsoft PowerPoint - 7-Work and Energy.ppt

0125_ 워크샵 발표자료_완성.key


2014 HSC Korean Continuers

11.8.HUHkoreanrock.hwp

Something that can be seen, touched or otherwise sensed

Transcription:

데이터베이스및설계 Chap 4. 관계데이터베이스 (#2/2) 2013.03.20. 오병우 컴퓨터공학과

Integrity rule Introduction To inform the DBMS of certain constraints in the real world, so that it can prevent impossible configuration of values from occurring (ex) (1) supplier numbers must be of the form Snnnn (2) part numbers must be of the form Pnnnn (3) supplier status values must be in the range 1-100 (4) part weights must be greater than zero (5) shipment quantities must be a multiple of 100 Two general integrity rules (apply to every database) Entity integrity rule primary key Referential integrity rule foreign key 무결성, 완전한상태, soundness 제약 배치, 형상 Department of Computer Engineering 2

일반적인의미 자물쇠를푸는열쇠 Key 중요하고핵심적인부분 (key man) Relation 에서의의미 투플을유일하게식별할수있는애트리뷰트집합 애트리뷰트전부를사용해도식별가능하기는함 일반적으로는애트리뷰트의일부를사용함 흔히혼용해서사용 Primary Key 또는 Candidate Key 로혼용하므로문맥의의미를파악하고유의해야함 Department of Computer Engineering 3

후보키 무엇에대한후보? Candidate key 정답 ) Primary Key Attribute K (possible composite) of R: candidate key it satisfies the following two time-independent properties: 릴레이션 R(A 1, A 2,..., A n ) 에대한애트리뷰트집합 K = { A i, A j,..., A k } 로서아래성질을만족하면후보키 1. uniqueness: (s#, CITY) At any given time, no two tuples of R have same value for K 2. minimality: (s#) If K is composite, then no component of K can be eliminated without destroying the uniqueness property 필요없는 attribute 가있으면 candidate key 가아님 (super key 라고부름 ) * every relation has at least one candidate key ( no duplicate tuples) Department of Computer Engineering 4

P 릴레이션에서 P# 가 Primary Key 일경우 Primary key Primary key 후보키 (candidate key) 중에서데이터베이스설계자가지정한하나의키 One (arbitrarily) chosen key from the set of candidate keys Every relation has a primary key Tuple-level addressing mechanism ( some specific tuple) (ex) P(P#, PNAME, COLOR, WEIGHT, CITY) SELECT * SELECT * FROM P WHERE P# = P3 ; FROM P WHERE CITY = Paris ; 임의로 (at most) one tuple unpredictable number of tuples Department of Computer Engineering 5

Alternate key Alternate key A candidate key that is not the primary key Example: S(S#, SNAME, STATUS, CITY) 1. candidate key: S#, SNAME 2. primary key: S# 3. alternate key: SNAME Relational model requires associative addressing 주소가아닌값으로 tuple을 select 가능 All relational addressing clearly is associative (i.e., value-based, not position-based) At logical level no associative hardware in physical level 정리하면 : Candidate Key = Primary Key + Alternate Key 대체 후보 Key 값을주소로사용 Department of Computer Engineering 6

The Entity Integrity Rule Entity integrity rule No component of the primary key of a base relation is allowed to accept nulls Primary key는 null 일수없음 Null (not exist, unknown) ( blank or zero) Information is missing for some reason (e.g., the property does not apply, or the value is unknown, etc.) A value or representation that is understood by convention not to stand for any real value of the applicable attribute 정보부재를명시적으로표현하는특수한데이터값 1 알려지지않은값 (unknown value) 2 해당없음 (inapplicable) Null Tag Value 관습, 관례 Department of Computer Engineering 7

R1 for S# Foreign key Foreign key (no converse: 반대로는안됨 ) An attribute (possibly composite) of one relation R2 whose values are required to match those of the primary key of some relation R1 R1 and R2 not necessarily distinct Attribute FK (possible composite) of base relation R2: foreign key it satisfies the following two time-independent properties: 1. each value of FK is either wholly null or wholly nonnull 2. there exists a base relation R1 with primary key PK such that each nonnull value of FK is identical to the value of PK in some tuple of R1 Referential diagram R2 Referencing relation Referenced relation (target relation) S# P# S(S#, SNAME, STATUS, CITY) SP(S#, P#, QTY) P(P#, PNAME, COLOR, WEIGHT, CITY) R1 for P# Department of Computer Engineering 8

Points Foreign key 1. foreign key and corresponding primary key: the same underlying domain 2. foreign key need not be a component of the primary key in the referencing relation DEPT (DEPT#,, BUDGET, ) : 여기에서는 primary key EMP (EMP#,, DEPT#,, SALARY, ) : 여기에서 DEPT# 는 primary key가아님 3. a given relation can be both a referenced relation and a referencing relation Rn R(n-1) R(n-2) R2 R1 : referential path 4. relations R1 and R2 are not necessarily distinct EMP(EMP#,, SALARY,, MGR_EMP#, ) : MGR_EMP# 는팀장 (6 번참조 ) 5. referential cycle Rn R(n-1) R(n-2) R2 R1 Rn 6. foreign keys sometimes have to accept null (not exist) Value of MGR_EMP# for the president ( 사장은 null) 7. foreign-to-primary-key match Certain relationships between tuples Unknown 이아니라 not exist 확실한, 틀림없는 Department of Computer Engineering 9

The Referential Integrity Rule Referential integrity rule Referential integrity rule The database must not contain any unmatched foreign key value (if B references A, then A must exist) S, P, SP 에서 S 의 S# 변경시에 SP 를어떻게처리? 특정 tuple 의 S# 를 S1 에서 S6 로변경할때처리방법 허락하지않음 S# 에서변경후 SP에서도변경 S# 에서변경후 SP에서대응값은 NULL로처리 S(S#, SNAME, STATUS, CITY) SP(S#, P#, QTY) P(P#, PNAME, COLOR, WEIGHT, CITY) Department of Computer Engineering 10

Foreign Key Rules Three questions for foreign key 1. can that foreign key accept nulls? possible 2. an attempt to delete the target of a foreign key reference 1) RESTRICTED: if no matching referencing tuples (otherwise, rejected) 2) CASCADES : cascades to delete the matching referencing tuples (ex) R3 R2 R1 with CASCADES DELETE on a given tuple of relation R1 3) NULLIFIES : set to null in the foreign keys of the matching referencing tuples 3. an attempt to update the primary key of the target of a foreign key reference 1) RESTRICTED: if no matching referencing tuples (otherwise, rejected) 2) CASCADES : cascades to update the matching referencing tuples 3) NULLIFIES : set to null in the foreign keys of the matching referencing tuples 연쇄, 폭포처럼흐르다 Department of Computer Engineering 11

example 대학 (University) 관계데이터베이스 학생 (STUDENT) 학번 (Sno) 이름 (Sname) 학년 (Year) 학과 (Dept) 100 나수영 4 컴퓨터 200 이찬수 3 전기 300 정기태 1 컴퓨터 400 송병길 4 컴퓨터 500 박종화 2 산공 과목 (COURSE) 과목번호 (Cno) 과목이름 (Cname) 학점 (Credit) 학과 (Dept) C123 프로그래밍 3 컴퓨터 C312 자료구조 3 컴퓨터 C324 화일구조 3 컴퓨터 C413 데이터베이스 3 컴퓨터 E412 반도체 3 전자 담당교수 (PRname) 김성국 황수관 이규찬 이일로 홍봉진 Department of Computer Engineering 12

example 대학 (University) 관계데이터베이스 (cont d) 등록 (ENROL) 학번 (Sno) 100 과목번호 (Cno) C413 성적 (Grade) A 중간성적 (Midterm) 90 기말성적 (Final) 95 100 E412 A 95 95 200 C123 B 85 80 300 C312 A 90 95 300 C324 C 75 75 300 C413 A 95 90 400 C312 A 90 95 400 C324 A 95 90 400 C413 B 80 85 400 E412 C 65 75 500 C312 B 85 80 Department of Computer Engineering 13

R1 R2 인경우 예제 교수 ( 교수번호, 교수이름, 학과번호, 직급 ) 학과 ( 학과번호, 학과이름, 학과장교수번호, 학생수 ) PK FK 학생 ( 학번, 이름, 학년, 학과 ) 과목 ( 과목번호, 과목이름, 학점, 학과, 담당교수 ) 등록 ( 학번, 과목번호, 성적 ) FK FK R1 = R2 인경우 교수1 ( 교수번호, 교수이름, 학과번호, 학장교수번호 ) PK FK Department of Computer Engineering 14

Summary : Integrity Constraint (1) 개체무결성 (entity integrity) Primary key 값은언제어느때고 null 값을가질수없다. Garbage ( 쓰레기 ) 개념과비슷 (2) 참조무결성 (referential integrity) Foreign key 값은참조된 relation 의 primary key 값이거나 null 이다. 데이터베이스상태 (database state) 가항상만족되어야함 DBMS 는데이터베이스상태의변화에도항상무결성제약을만족시키도록해야함 어느한시점에데이터베이스에저장된데이터값 Database instance 데이터베이스상태변화 : insert, delete, update 연산 Dangling Reference 개념과비슷 Department of Computer Engineering 15