PowerPoint 프레젠테이션

Similar documents
<4D F736F F F696E74202D E DB0FCB0E820BBE7BBF3BFA120C0C7C7D120B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20BCB3B0E8>

슬라이드 제목 없음

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

PowerPoint Template

예제소스는 에서다운로드하여사용하거나툴바의 [ 새쿼리 ]( 에아래의소스를입력한다. 입력후에는앞으로실습을위해서저장해둔다. -- 실습에필요한 Madang DB 와 COMPANY DB 를모두생성한다. -- 데이터베이스생성 US

VENUS Express 사용자 매뉴얼

슬라이드 제목 없음

Microsoft PowerPoint - 10Àå.ppt

Microsoft PowerPoint - 7(ERModeling) [호환 모드]

Object Oriented Analyis & Design Training Agenda

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

Spring Boot/JDBC JdbcTemplate/CRUD 예제

PostgreSQL 2 Uniersity of California at Berkeley ( ) 에서개발된관계형데이터베이스서버인 Ingres 가시초 ( 후에 Computer Associates 에인수됨 ) 1

untitled

Microsoft PowerPoint - 3장-MS SQL Server.ppt [호환 모드]

Microsoft PowerPoint - QVIZMVUMWURI.pptx

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

Microsoft PowerPoint - 27.pptx

슬라이드 제목 없음

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi

Microsoft PowerPoint - ch07_데이터베이스 언어 SQL.pptx

12. 데이타베이스 설계

Ç¥Áö

DBMS & SQL Server Installation Database Laboratory

쉽게 풀어쓴 C 프로그래밊

PowerPoint 프레젠테이션

MySQL-.. 1

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

10.ppt

A. 다운로드 에접속한다. 검색창에 sql server 0 express 를입력하고검색을클릭한다. 검색결과중 [MicrosoftR SQL ServerR 0 서비스팩 (SP) Express] 를선택한

JAVA PROGRAMMING 실습 08.다형성

PowerPoint 프레젠테이션

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

Spring Data JPA Many To Many 양방향 관계 예제

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

PowerPoint 프레젠테이션

슬라이드 1

강의 개요

OCW_C언어 기초

완벽한개념정립 _ 행렬의참, 거짓 수학전문가 NAMU 선생 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에

슬라이드 1

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

Microsoft PowerPoint - 1주차 UML의 구성과 도구

Microsoft PowerPoint - chap04-연산자.pptx

PowerPoint 프레젠테이션

윈도우시스템프로그래밍

adfasdfasfdasfasfadf

PowerPoint Presentation

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

03-최신데이터

Microsoft Word - [2017SMA][T8]OOPT_Stage_2040 ver2.docx

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

MVVM 패턴의 이해

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

PowerPoint 프레젠테이션

슬라이드 제목 없음

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

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

6장. SQL

PowerPoint Presentation

JDBC 소개및설치 Database Laboratory

SQL

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

PowerPoint Presentation

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

문서 템플릿

Windows 8에서 BioStar 1 설치하기

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

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

C# Programming Guide - Types

별지 제10호 서식

Microsoft PowerPoint - Database.ppt

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

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

USER GUIDE

RDB개요.ppt

PowerPoint 프레젠테이션

강의계획서 (Sylabus) 2013 학년도 2 학기 * 강의과목 교과목명 (CourseName) 한국문화를찾아서 INSEARCHOFKOREANCULTURE 언어 (Language) 영어 과목번호 - 분반 (CourseNo.-Class) 수강대상

2. 강의방법 (CourseResources) 세미나 Seminar 발표 Presentation 질의응답 Q&A 초청강의 Special Lecture 현장답사 Field Trip 유인물활용 Handouts Audio/Video/TV Team Teaching 토의 / 토

Relational Model

WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역

PowerPoint 프레젠테이션

Chap 6: Graphs

ecorp-프로젝트제안서작성실무(양식3)

<C1A4BAB8C3B3B8AE5FBBEABEF7B1E2BBE75FC7CAB1E25F E687770>

7

PowerPoint 프레젠테이션

<4D F736F F F696E74202D E20B0FCB0E820B5A5C0CCC5CD20B8F0B5A8B0FA20B0FCB0E820B5A5C0CCC5CDBAA3C0CCBDBA20C1A6BEE020C1B6B0C7>

강의 개요

제8장 자바 GUI 프로그래밍 II

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

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

7

PowerPoint 프레젠테이션

Cloud Friendly System Architecture

< B3E220C1A4BAB8C3B3B8AEBBEABEF7B1E2BBE B3E2B0A320B1E2C3E2B9AEC1A6C0BAC7E02E687770>

MySQL-Ch10

Windows Server 2012

Transcription:

Chapter 06 데이터모델링... 오라클로배우는데이터베이스개론과실습

1. 데이터모델링의개념 2. ER 모델 3. ER 모델을관계데이터모델로사상 4. ERwin 실습 5. 모델링연습 ( 마당대학데이터베이스 )

데이터모델링의개념을이해한다. 개념적모델링단계에사용하는 ER 모델을이해하고작성방법을알아본다. ERwin 프로그램을사용하여 ER 모델을작성해본다. 마당대학데이터베이스를 ER 모델로직접설계해본다.

01. 데이터모델링의개념 데이터베이스생명주기 데이터모델링과정

01. 데이터모델링의개념 건물설계 ( 소프트웨어설계 ) 지반설계 ( 데이터베이스설계 ) 그림 6-1 데이터모델링의중요성

01. 데이터모델링의개념 현실세계 개념 1 개념 2 개념 3 개념적모델 (ER 다이어그램 ) 개체 1 관계 일치해야함 1 정보모델링 개체 2 2 데이터모델링 데이터베이스 속성 1 속성 2 속성 3 엔티티 1 속성 1 엔티티 2 속성 1 엔티티 1 속성 2 엔티티 2 속성 2 엔티티 2 속성 3 엔티티 2 속성 3 3 DB 로구현 논리적모델 ( 관계데이터모델 ) 테이블 1 ( 속성 1, 속성 2, 속성 3) 테이블 2 ( 속성 1, 속성 2, 속성 3) 그림 6-2 데이터모델링의개념

1. 데이터베이스생명주기 데이터베이스생명주기 (database life cycle) : 데이터베이스의생성과운영에관련 된특징 요구사항수집 및분석 감시및개선 설계 그림 6-3 데이터베이스생명주기 운영 구현

1. 데이터베이스생명주기 요구사항수집및분석사용자들의요구사항을듣고분석하여데이터베이스구축의범위를정하는단계설계분석된요구사항을기초로주요개념과업무프로세스등을식별하고 ( 개념적설계 ), 사용하는 DBMS의종류에맞게변환 ( 논리적설계 ) 한후, 데이터베이스스키마를도출 ( 물리적설계 ) 구현설계단계에서생성한스키마를실제 DBMS에적용하여테이블및관련객체 ( 뷰, 인덱스등 ) 를만듦 운영구현된데이터베이스를기반으로소프트웨어를구축하여서비스를제공감시및개선데이터베이스운영에따른시스템의문제를관찰하고데이터베이스자체의문제점을파악하여개선

2. 데이터모델링과정 현실세계의대상및사용자의요구등을정리및분석 요구사항수집및분석 사용자식별 데이터베이스용도식별 사용자요구사항수집및명세 설계 중요개념을구분 개념적모델링 DBMS 선정 논리적모델링 핵심 Entity( 독립개체 ) 도출 ERD 작성 각개념을구체화 ERD-RDB 모델사상 상세속성정의 정규화등 물리적모델링 데이터베이스생성계획에따라개체, 인덱스등을생성 DB 개체정의 테이블및인덱스등설계 데이터베이스구현 그림 6-4 데이터모델링과정

2.1 요구사항수집및분석 요구사항수집방법 1. 실제문서를수집하고분석함 2. 담당자와의인터뷰나설문조사를통해요구사항을직접수렴함 3. 비슷한업무를처리하는기존의데이터베이스를분석함 4. 각업무와연관된모든부분을살펴봄

2.2 개념적모델링 개념적모델링 (conceptual modeling) 요구사항을수집하고분석한결과를토대로업무의핵심적인개념을구분하고전체적인뼈대를만드는과정 개체 (entity) 를추출하고각개체들간의관계를정의하여 ER 다이어그램 (ERD, Entity Relationship Diagram) 을만드는과정까지를말함 도서주문고객 도서이름 출판도서단가사 도서단가 주문일자 고객이름 주소 전화번호 그림 6-5 개념적모델링의예

2.3 논리적모델링 논리적모델링 (logical modeling) : 개념적모델링에서만든 ER 다이어그램을사용하려는 DBMS 에맞게사상 ( 매핑, mapping) 하여실제데이터베이스로구현하기위한모델을만드는 과정 도서주문고객 도서 ( 도서번호, 도서이름, 출판사이름, 도서단가 ) 고객 ( 고객번호, 고객이름, 주소, 전화번호 ) 주문 ( 주문번호, 고객번호 (FK), 도서번호 (FK), 주문일자, 주문금액 ) 그림 6-6 논리적모델링의예 논리적모델링과정 1. 개념적모델링에서추출하지않았던상세속성들을모두추출함 2. 정규화수행 3. 데이터표준화수행

2.4 물리적모델링 물리적모델링 (physical modeling) 작성된논리적모델을실제컴퓨터의저장장치에저장하기위한물리적구조를정의하고구현하는과정 DBMS의특성에맞게저장구조를정의해야데이터베이스가최적의성능을낼수있음 DBMS 도서 ( 도서번호, 도서이름, 출판사이름, 도서단가 ) CREATE TABLE Book ( bookid INT PRIMARY KEY, bookname VARCHAR(40), publisher VARCHAR(40), price INT ); 고객 ( 고객번호, 고객이름, 주소, 전화번호 ) CREATE TABLE Customer ( custid INT PRIMARY KEY, name VARCHAR(40), address VARCHAR(40), phone VARCHAR(30) ); 주문 ( 주문번호, 고객번호 (FK), 도서번호 (FK), 주문일자, 주문금액 ) CREATE TABLE Orders ( orderid INT PRIMARY KEY, custid INT REFERENCES Customer(custid), bookid INT REFERENCES Book (bookid ), orderdate DATE, saleprice INT ); 그림 6-7 물리적모델링의예

2.4 물리적모델링 물리적모델링시트랜잭션, 저장공간설계측면에서고려할사항 1. 응답시간을최소화 2. 얼마나많은트랜잭션을동시에발생시킬수있는지검토 3. 데이터가저장될공간을효율적으로배치

02. ER 모델 개체와개체타입 속성 관계와관계타입 약한개체타입과식별자 IE 표기법

02. ER 모델 ER(Entity Relationship) 모델 : 세상의사물을개체 (entity) 와개체간의관계 (relationship) 로표현함 개체 : 독립적인의미를지니고있는유무형의사람또는사물. 개체의특성을나타내는속성 (attribute) 에의해식별됨. 개체끼리서로관계를가짐. 그림 6-8 ER 모델의기본개념

02. ER 모델 ER 다이어그램 : ER 모델은개체와개체간의관계를표준화된그림으로나타냄 개체 - 관계 1 N 직원작업프로젝트 속성 직원번호 이름 직위 전화번호 과제번호 예산 그림 6-9 ER 다이어그램

1. 개체와개체타입 개체 (entity) 사람, 사물, 장소, 개념, 사건과같이유무형의정보를가지고있는독립적인실체 비슷한속성의개체타입 (entity type) 을구성하며, 개체집합 (entity set) 으로묶임 도서 개체타입 (entity type) 축구아는여자 축구의이해 축구의역사 개체 (entity) 개체집합 (entity set) 그림 6-10 개체, 개체타입, 개체집합

1.1 개체타입의 ER 다이어그램표현 ER 다이어그램상에서개체타입은직사각형으로나타냄 표 6-1 개체타입의 ER 다이어그램표현 개체타입의유형 강한개체 (strong entity) : 다른개체의도움없이독자적으로존재할수있는개체 약한개체 (weak entity) : 독자적으로는존재할수없고반드시상위개체타입을가짐

2. 속성 속성 (attribute) : 개체가가진성질 표 6-2 개체타입과속성 개체타입 도서 속성 도서이름, 출판사, 도서단가 속성의 ER 다이어그램표현 속성은기본적으로타원으로표현. 개체타입을나타내는직사각형과실선으로연결됨 속성의이름은타원의중앙에표기 속성이개체를유일하게식별할수있는키일경우속성이름에밑줄을그음 도서 도서이름 출판사 가격 그림 6-11 도서개체타입

2.2 속성의유형 표 6-3 속성의 ER 다이어그램표현

3. 관계와관계타입 관계 (relationship) : 개체사이의연관성을나타내는개념 관계타입 (relationship type) : 개체타입과개체타입간의연결가능한관계를정 의한것이며, 관계집합 (relationship set) 은관계로연결된집합을의미 도서 주문 고객 축구아는여자 1 번주문 축구의이해 2 번주문 박지성 축구의역사 3 번주문 관계 (relationship) 관계집합 (relationship set) 그림 6-15 관계, 관계타입, 관계집합

3.1 관계타입의 ER 다이어그램표현 표 6-4 관계타입의 ER 다이어그램표현 기호 주문 의미 관계타입 개체타입 관계 개체타입 도서 구매 고객 학생 소속 학과 학생 수강 강좌 수강학기 그림 6-16 관계의예

3.2 관계타입의유형 차수에따른유형 관계집합에참가하는개체타입의수를관계타입의차수 (degree) 라고함 표 6-5 차수에따른관계타입의유형 기호의미설명 개체 관계 1 진관계 한개의개체가자기자신과 관계를맺음 개체 관계 개체 2 진관계두개의개체가관계를맺음 개체 관계 개체 3 진관계세개의개체가관계를맺음 개체

3.2 관계타입의유형 1 진관계 (recursive relationship) : 한개의개체가자기자신과관계를맺는경우 학생 멘토링 그림 6-17 1 진관계의예 2 진관계 (binary relationship) : 두개의개체가관계를맺는경우 학생 소속 학과 그림 6-18 2 진관계의예 3 진관계 (ternary relationship) : 세개의개체가관계를맺는경우 직원 수행 프로젝트 부품 그림 6-19 3 진관계의예

3.2 관계타입의유형 관계대응수 (cardinality) : 두개체타입의관계에실제로참여하는개별개체수 표 6-6 관계대응수에따른관계타입의유형 기호의미설명 1 관계 1 일대일관계 하나의개체가하나의개체에대응 1 관계 N 일대다관계 하나의개체가여러개체에대응 N 관계 1 다대일관계 여러개체가하나의개체에대응 M 관계 N 다대다관계 여러개체가여러개체에대응

3.2 관계타입의유형 일대일 (1:1) 관계 좌측개체타입에포함된개체가우측개체타입에포함된개체와일대일로대응하는관계 사원 컴퓨터 사원 1 1 사용 컴퓨터 그림 6-20 일대일관계의예

3.2 관계타입의유형 일대다 (1:N), 다대일 (N:1) 관계 실제일상생활에서가장많이볼수있는관계로, 한쪽개체타입의개체하나가다른쪽개체 타입의여러개체와관계를맺음 학과 학생 학과 1 N 소속 학생 그림 6-21 일대다 (1:N), 다대일 (N:1) 관계의예

3.2 관계타입의유형 다대다 (M:N) 관계 각개체타입의개체들이서로임의의개수의개체들과서로복합적인관계를맺고있는관계 학생 강좌 학생 M 수강 N 강좌 그림 6-22 다대다 (M:N) 관계의예

3.2 관계타입의유형 관계대응수의최솟값과최댓값 관계대응수 1:1, 1:N, M:N 에서 1, N, M 은각개체가관계에참여하는최댓값을의미 관계에참여하는개체의최솟값을표시하지않는다는단점을보완하기위해다이어그램에서는대응수외에최솟값과최댓값을관계실선위에 ( 최솟값, 최댓값 ) 으로표기 학생 (min1, max1) 수강 (min2, max2) 강좌 그림 6-23 관계대응수의최솟값과최댓값의표기표 6-6 관계대응수에따른관계타입의유형 관계 (min1,max1) (min2,max2) 1:1 (0, 1) (0, 1) 1:N (0, *) (0, 1) M:N (0, *) (0, *) 학과 1 소속 N (0, *) (1, 1) 학생 그림 6-24 ( 최솟값, 최댓값 ) 표기의예

3.3 ISA 관계 상위개체타입의특성에따라하위개체타입이결정되는형태 표 6-8 ISA 관계 그림 6-25 ISA 관계의예

3.4 참여제약조건 개체집합내모든개체가관계에참여하는지유무에따라전체참여와부분참여로구분가능 전체참여는개체집합의모든개체가, 부분참여는일부만참여 전체참여를 ( 최솟값, 최댓값 ) 으로표현할경우최솟값이 1 이상으로모두참여한다는뜻이고, 부분참여는최솟값이 0 이상임 표 6-9 관계의참여제약조건 기호 의미 전체참여 부분참여 학생 수강 강좌 그림 6-26 부분참여와전체참여의예

3.5 역할 개체타입간의관계를표현할때각개체들은고유한역할 (role) 을담당 교수 1 N 지도지도한다지도받는다 학생 그림 6-27 역할의예

3.6 순환적관계 순환적관계 (recursive relationship) : 하나의개체타입이동일한개체타입 ( 자기 자신 ) 과순환적으로관계를가지는형태 학생 사원 멘토멘티지시한다지시받는다 M N M N 멘토링 지시 (a) 학생의멘토링관계 (b) 사원의지시관계 그림 6-28 순환적관계의예

4. 약한개체타입과식별자 약한개체 (weak entity) 타입 상위개체타입이결정되지않으면개별개체를식별할수없는종속된개체타입 약한개체타입은독립적인키로는존재할수없지만상위개체타입의키와결합하여약한개체타입의개별개체를고유하게식별하는속성을식별자 (discriminator) 혹은부분키 (partial key) 라고함 표 6-10 식별자와약한개체타입 기호의미설명 가족 부양 약한개체타입 식별관계타입 강한개체타입이있어야존재할수있음 이중직사각형으로표현 강한개체타입과약한개체타입의관계를나타냄 강한개체타입의기본키를상속받아사용함 이중마름모꼴로표현 키 강한개체타입의키속성 식별자 약한개체타입에서개별개체를구분하는속성 키라고하지않고식별자라고부름

4. 약한개체타입과식별자 직원번호 이름 직책 직원 1 부양 N 가족 이름 관계 그림 6-29 약한개체타입과식별자의예

5. IE 표기법 IE 표기법에서개체타입과속성은직사각형으로표현 그림 6-11 IE 표기법 관계와관계대응수 그림 6-31 IE 표기법의예 ( 비식별자관계 ) 그림 6-32 IE 표기법의예 ( 식별자관계 )

연습문제풀이 2. ER 모델의표현방법으로옳지않은것은? 1 개체집합 - 사각형 2 관계집합 - 마름모 3 속성 - 오각형 4 다중값속성 - 이중타원형 3. ER 모델에대한설명으로옳지않은것은? 1 ER 다이어그램으로표현하며피터첸이제안하였다. 2 일대일 (1:1) 관계유형만표현할수있다. 3 개체타입과이들간의관계타입을이용해현실세계를개념적으로표현한다. 4 ER 다이어그램은 ER 모델을그래프방식으로표현한것이다. 4. ER 표기법에대한설명중옳지않은것은?

03. ER 모델을관계데이터모델로사상 개체타입의사상 관계타입의사상 다중값속성의사상

03. ER 모델을관계데이터모델로사상 완성된 ER 모델은실제데이터베이스로구축하기위해논리적모델링단계를거치 는데, 이단계에서사상 (mapping) 이이루어짐 그림 6-33 ER 모델을관계데이터모델로사상 표 6-12 ER 모델과관계데이터모델의사상알고리즘

1. 개체타입의사상 [1 단계 ] 강한 ( 정규 ) 개체타입 : 정규개체타입 E 의경우대응하는릴레이션 R 을생성함 [2 단계 ] 약한개체타입 : 약한개체타입에서생성된릴레이션은자신의키와함께강한 개체타입의키를외래키로사상하여자신의기본키를구성함 그림 6-34 개체타입의사상

2. 관계타입의사상 KA1 KA2 A2 E1 R E2 A4 그림 6-34 이진관계타입 [ 방법 1] 오른쪽개체타입 E2 를기준으로관계 R 을표현한다. E1(KA1, A2) E2(KA2, A4, KA1) [ 방법 2] 왼쪽개체타입 E1 을기준으로관계 R 을표현한다. E1(KA1, A2, KA2) E2(KA2, A4) [ 방법 3] 단일릴레이션 ER 로모두통합하여관계 R 을표현한다. ER(KA1, A2, KA2, A4) [ 방법 4] 개체타입 E1, E2 와관계타입 R 을모두독립된릴레이션으로표현한다. E1(KA1, A2) R(KA1, KA2) E2(KA2, A4)

2. 관계타입의사상 [3 단계 ] 이진 1:1 관계타입 이진 1:1 관계타입의경우 [ 방법 1]~[ 방법 4] 까지모든유형으로사상가능. 개체가가진정보유 형에따라판단 그림 6-36 이진 1:1 관계타입의사상 [4 단계 ] 이진 1:N 관계타입 이진 1:N 관계타입의경우 N 의위치에따라 [ 방법 1] 또는 [ 방법 2] 의유형으로사상됨 그림 6-36 이진 1:N 관계타입의사상

2. 관계타입의사상 [5 단계 ] 이진 M:N 관계타입 이진 M:N 관계타입은 [ 방법 4] 의유형으로사상 그림 6-38 이진 N:M 관계타입의사상 [6 단계 ] N 진관계타입 ER 모델의차수가 3 이상인다진관계타입의경우 [ 방법 4] 의유형으로사상 그림 6-36 이진 N 진관계타입의사상

3. 다중값속성의사상 그림 6-35 다중값속성의개수에따른사상방법 [7 단계 ] 속성의개수를알수없으면 [ 방법 1] 을, 속성의개수가제한적으로정해지면 [ 방법 2] 를사용 그림 6-41 다중값속성의사상

연습문제풀이 6. 다음내용을모두포함하는데이터베이스를설계하시오. 필요하면몇가지가정을넣을수있다. (1) ER 다이어그램을그리시오. (2) ER 다이어그램을 IE 표기법으로변환하여그리시오. (3) ER 다이어그램을테이블로변환하시오.

연습문제풀이 8. 다음은고객과주문에관한 ER 다이어그램이다. 개체는고객 (Customer), 제품 (Product), 주문 (Invoice) 으로구성된다. Place 관계는 주문한다 를, LineItem은 주문항목 을의미한다. 그림에해당하는테이블을작성하시오 ( 변환된테이블의기본키는밑줄실선, 외래키는밑줄점선으로표시한다. 기본키인동시에외래키일경우에는밑줄실선으로표시한다. 테이블변환을위하여필요한사항중설명되지않은것은임의로정하여설계한다 ).

04. ERwin 실습 ERwin 기본화면및툴둘러보기 ERwin 실습을위한기본환경설정하기 마당서점설계실습 DBMS에접속하여테이블생성하기

04. ERwin 실습 ERwin : 데이터모델링을하기위한프로그램. IE 표기법을지원 도서 주문 고객 도서번호 주문번호 고객번호 출판사이름 (FK) 도서이름도서단가 고객번호 (FK) 도서번호 (FK) 주문일자주문금액 고객이름주소전화번호 출판사 출판사이름 담당자이름전화번호 그림 6-36 마당서점의 ER 다이어그램

1. ERwin 기본화면및툴둘러보기 ERwin Data Modeler 실행 ERwin 의기본화면 메뉴 툴바 다이어그램작성영역 모델탐색기

1. ERwin 기본화면및툴둘러보기 툴바 개체 1:N ( 식별 ) 1:N ( 비식별 ) SUB 타입 (ISA) N:M ( 식별 ) 개체 : 개체타입의이름, 식별자, 속성을표현 SUB 타입 : ISA 모델의슈퍼클래스와서브클래스처럼부모, 자식관계에서자식개체가서로배타적인관계를가지는여러서브개체타입을표현 1:N( 식별 ), N:M( 식별 ), 1:N( 비식별 ) : 1, N, M은두개체간의관계에서관계대응수를말함. 식별관계는두개체가부모 (1), 자식 (N) 관계일때부모의기본키가자식의기본키가되거나기본키의구성원으로사용되는관계로실선으로나타냄. 비식별관계는부모의기본키가자식의기본키가아닌속성의일부로전이되는관계로점선으로나타냄. 관계의필수 (1) 와선택 (0) 은관계선의옵션을통해선택할수있음

2. ERwin 실습을위한기본환경설정하기 목적과대상에맞는모델, DBMS, 표기법을선택해야함 표 6-13 Erwin 실습을위한기본환경설정 모델타입 DBMS 표기법 Logical/Physical SQL Server IE 표기법 기본환경설정순서 ( 교재 341쪽 ~345쪽참고 ) 1 모델타입, DBMS 선택하기 2 IE 표기법으로변경하기 3 툴바에메뉴추가하기 ( 선택사항 )

3. 마당서점설계실습 1. 마당서점의논리적모델링 1 마당서점의요구사항분석후개체만들기 그림 6-52 출판사개체생성 2 개체간관계표현하기 그림 6-53 출판사, 도서개체의관계설정 (1:N 비식별 ) 그림 6-54 출판사, 도서개체의관계설정 (1:N 비식별

연습문제풀이 3 N:M 관계해소하기 그림 6-55 N:M 관계해소 4 식별관계및관계대응수변경하기 그림 6-57 개체간식별관계변경

3.2 도메인정의하기 도메인이란속성이가질수있는값을정의하는것. ER 다이어그램이완성후도메인을정의 표 6-17 마당서점의도메인별데이터타입정의표 그림 6-61 도메인별데이터타입설정 그림 6-60 도메인정의표에따라생성한도메인

3.3 마당서점의물리적모델링 1 ER 다이어그램불러오기 : [File] [Open] 2 Physical 타입으로변경하기 : [View] [Physical Model] 그림 6-63 모델타입의변경

3.3 마당서점의물리적모델링 3 물리적모델링 그림 6-64 마당서점의테이블 4 컬럼의속성확인하기 그림 6-65 컬럼속성확인

3.4 DBMS 에접속하여테이블생성하기 DBMS 에접속하기 [Actions] [Database Connection] 메뉴선택후 [SQL Server Connection] 창에서다음과같이설정 Database : SQL Server 2008/2012 Authentication : Database Authentication User Name : mduser Password : mdpass Connection Type : Use Native Connection Server : localhost Database : Madang 그림 6-69 데이터베이스스키마생성 테이블생성하기 [Actions] [Forward Engineer] [Schema] 메뉴선택 -> 각대상별로오라클에적용할내용설정함 -> 테이블과인덱스를제외한모든부분의체크해제 - 그림 6-70 madang 데이터베이스에추가된테이블

05. 모델링연습 ( 마당대학데이터베이스 ) 마당대학의요구사항 마당대학의 ER 다이어그램

1. 마당대학의요구사항 1 교수 (Professor) 는아이디 (ssn), 이름 (name), 나이 (age), 직위 (rank), 연구분야 (speciality) 를가진다. 2 학과 (Department) 에는학과번호 (dno), 학과이름 (dname), 학과사무실 (office) 이있다. 3 대학원생 (Graduate) 은아이디 (ssn), 이름 (name), 나이 (age), 학위과정 (deg_prog, 석사 / 박사 ) 을가진다. 4 과제 (Project) 는과제번호 (pid), 지원기관 (sponsor), 개시일 (start_date), 종료일 (end_date), 예산액 (budget) 이있다. 5 학과마다그학과를운영 (run) 하는교수 ( 학과장이라고한다 ) 가한명씩있다. 6 한교수가여러학과에서근무 (work-dept) 할수있는데, 이때각학과별로참여백분율 (pct_time) 이기록된다. 7 대학원생에게는학위과정을밟을전공학과 (major) 가하나씩있다. 8 대학원생에게는어떤과목을들으면좋을지조언 (advisor) 해주는선임대학원생 ( 학생조언자라고한다 ) 이있다. 9 과제는한교수 ( 연구책임자라고한다 ) 에의해관리 (manage) 된다. 10 과제는한사람이상의교수 ( 공동연구책임자라고한다 ) 에의해수행 (work-in) 된다. 11 한과제는한명이상의대학원생 ( 연구조교라고한다 ) 에의해수행 (work-prog) 된다.

2. 마당대학의 ER 다이어그램 1 교수 (Professor) 는아이디 (ssn), 이름 (name), 나이 (age), 직위 (rank), 연구분야 (speciality) 를가진다. age speciality ssn rank name Professor 그림 6-71 교수 (Professor) 개체 2 학과 (Department) 에는학과번호 (dno), 학과이름 (dname), 학과사무실 (office) 이있다. Dept dno dname office 그림 6-72 학과 (Dept) 개체

2. 마당대학의 ER 다이어그램 3 대학원생 (Graduate) 은아이디 (ssn), 이름 (name), 나이 (age), 학위과정 (deg_prog, 석사 / 박사 ) 을가진다. Graduate ssn name age deg_prog 그림 6-73 대학원생 (Graduate) 개체 4 과제 (Project) 는과제번호 (pid), 지원기관 (sponsor), 개시일 (start_date), 종료일 (end_date), 예산액 (budget) 이있다. pid sponsor Project start_date end_date budget 그림 6-74 과제 (Project) 개체

2. 마당대학의 ER 다이어그램 5 학과마다그학과를운영 (run) 하는교수 ( 학과장이라고한다 ) 가한명씩있다. 6 한교수가여러학과에서근무 (work-dept) 할수있는데, 이때각학과별로참여백분율 (pct_time) 이기록된다. age speciality ssn rank name (1,n) Professor (0,1) work_dept N:M run 1:1 pct_time (0,n) Dept (1,1) dno dname office 그림 6-75 운영 (run) 관계와근무 (work-dept) 관계

2. 마당대학의 ER 다이어그램 7 대학원생에게는학위과정을밟을전공학과 (major) 가하나씩있다. 8 대학원생에게는어떤과목을들으면좋을지조언 (advisor) 해주는선임대학원생 ( 학생조언자라고한다 ) 이있다. Dept major (0,n) 1:N (1,1) Graduate (0,n) advise advised (1,1) advisor 1:N ssn name dno dname office age deg_prog 그림 6-76 전공학과 (major) 관계와조언 (advisor) 관계

2. 마당대학의 ER 다이어그램 9 과제는한교수 ( 연구책임자라고한다 ) 에의해관리 (manage) 된다. 10 과제는한사람이상의교수 ( 공동연구책임자라고한다 ) 에의해수행 (work-in) 된다. ssn age rank speciality work-in N:M pid sponsor start_date end_date name Professor (0,n) (0,n) manage 1:N (1,n) (1,1) Project budget 그림 6-77 관리 (manage) 관계와수행 (work-in) 관계

2. 마당대학의 ER 다이어그램 11 한과제는한명이상의대학원생 ( 연구조교라고한다 ) 에의해수행 (work-prog) 된다. pid sponsor start_date end_date Project budget (1,n) work-prog N:M Graduate ssn (0,n) (0,n) advise advised (1,1) advisor 1:N name age deg_prog 그림 6-78 수행 (work-prog) 관계

2. 마당대학의 ER 다이어그램 요구사항에맞게생성된최종 ER 다이어그램 age speciality pid start_date ssn rank work-in N:M sponsor end_date name (1,n) Professor (0,1) (0,n) (0,n) manage 1:N (1,n) (1,1) Project (1,n) budget work_dept N:M run 1:1 work-prog N:M pct_time (0,n) Dept (1,1) major (0,n) 1:N (1,1) (0,n) Graduate (0,n) advise advised (1,1) advisor 1:N ssn name dno dname office age deg_prog 그림 6-73 마당대학의 ER 다이어그램

2. 마당대학의 ER 다이어그램 관계데이터모델로변환한마당대학의 ER 다이어그램 [ 개체 ] Professor(ssn, name, age, rank, speciality) Dept(dno, dname, office, runprofessorssn) runprofessorssn : Professor(ssn) 을참조하는외래키로, 5 번요구사항의 run(1:1) 관계를표현 Graduate(ssn, name, age, deg_prog, dno, graduatessn) dno : Dept(dno) 를참조하는외래키로, 7 번요구사항 major(1:n) 관계를표현 graduatessn : Graduate(ssn) 을참조하는외래키로, 8 번요구사항 advisor(1:n) 관계를표현 Project(pid, sponsor, start_date, end_date, budget, managessn) managessn : Professor(ssn) 을참조하는외래키로, 9 번요구사항 manage(1:n) 관계를표현 [ 관계 ] - N:M 관계일경우교차테이블을생성한다. work-dept(professorssn, dno, pct_time) /* 교수의학과참여 */ 6 번요구사항의 work-dept(n:m) 관계를표현하기위한교차테이블이다. professorssn 은 Professor(ssn) 을참조하는외래키이고, dno 는 Dept(dno) 를참조하는외래키이다. pct_time 은관계에포함된속성이다. work-in(professorssn, pid) /* 교수의과제수행 */ 10 번요구사항의 work-in(n:m) 관계를표현하기위한교차테이블이다. professorssn 은 Professor(ssn) 을참조하는외래키이고, pid 는 Project(pid) 를참조하는외래키이다. work-prog(graduatessn, pid) /* 대학원생의과제수행 */ 11 번요구사항의 work-prog(n:m) 관계를표현하기위한교차테이블이다. graduatessn 은 Graduate(ssn) 을참조하는외래키이고, pid 는 Project(pid) 를참조하는외래키이다. 그림 6-74 마당대학데이터베이스스키마

2. 마당대학의 ER 다이어그램 관계데이터모델이완성되면실제 DBMS 에테이블을생성하기위한물리적모델 링과정을거침 그림 6-81 마당대학데이터베이스의 ER 다이어그램

요약 1. 데이터베이스생명주기 2. 개념적모델링 3. 논리적모델링 4. 물리적모델링 5. ER 모델 6. 개체와개체타입 7. 개체타입의종류 8. 속성 9. 속성의종류 10. 관계와관계타입 11. 관계대응수 12. ISA( 수퍼클래스와서브클래스 ) 관계 13. 전체참여와부분참여 14. 순환적관계 15. 식별자 16. IE 표기법 17. 사상 (mapping, 매핑 )