5. 데이터베이스설계도구: ERwin -...

Preview:

Citation preview

5. 데이터베이스 설계 도구: ERwin

ERwin 사용하기 개체들간에 관계 설정 개체들간에 관계 설정 ERwin을 이용한 물리적 모델링 ERD를 테이블로 전환 ERD를 테이블로 전환

7장. 데이터베이스설계 (Page 53)

5.1 ERwin 사용하기

ERwin Data Modeler 소개CA사에서 개발된 유료 CASE tool CA사에서 개발된 유료 CASE tool Community Edition의 경우, 무료로 사용 가능

모델 개체 수를 25개로 제한 모델 개체 수를 25개로 제한 모델링을 위한 표준 방법론 지원

IE(Information Engineering) 표기법 IDEF 1x(Integration DEFinition for Information Modeling) 표기법

GUI 기반의 논리적/물리적 모델링 지원리적 델링 델링 논리적 모델링: ER 모델링

물리적 모델링: Target DBMS의 스키마로 변환Reporting 및 모델 통합/버전 관리 등 지원 Reporting 및 모델 통합/버전 관리 등 지원

7장. 데이터베이스설계 (Page 54)

IE 표기법

개체 표현 E/1 개체이름

주키영역

관계 표현 방법

주키영역일반속성영역

관계 표현 방법

개체 A 개체 B1 : 1

필수

개체 A 개체 B

개체 A 개체 B

선택(A에대응되는 B가없을수도있다)(B에대응되는A는항상존재)

필수

개체 A 개체 B

개체 A 개체 B

1 : n 선택 (예: 지도교수 –학생)

선택

개체 A 개체 Bn : n 필수

7장. 데이터베이스설계 (Page 55)

새로운 모델 생성

[File] [New] 메뉴 선택모델의 Type과 Target Server 등을 선택 모델의 Type과 Target Server 등을 선택

7장. 데이터베이스설계 (Page 56)

메인 화면의 구성

개체 생성 관계 정의

도구

Diagram작성

ModelExplorer

7장. 데이터베이스설계 (Page 57)

ERwin에서 표기법 설정

Default: IDEF 1x아래와 같은 방법으로 표기법 변경 가능 아래와 같은 방법으로 표기법 변경 가능

[Model][Model Properties…] 메뉴 선택

IE 혹은 IDEF1x 선택

7장. 데이터베이스설계 (Page 58)

개체 생성

도구 모음에서 "Entity" 아이콘 실행

개체이름

주 키

일반 속성영역

7장. 데이터베이스설계 (Page 59)

5.2 개체들간에 관계 설정

용어 정의 관계 선언 관계 선언 n:n 관계의 해소

7장. 데이터베이스설계 (Page 60)

용어 정의

관계가 있는 두 개체를 부모 개체와 자식 개체로 구분부모 개체 부모 개체 정보를 먼저 생성하여 가지고 있는 개체

자식 개체 자식 개체 부모 개체의 주 키를 외래 키로 사용하는 개체

두 개체 사이의 관계를 식별 관계와 비식별 관계로 구분 식별 관계(Identifying Relationship)

개체의 키가 자식 개체의 키에 함 부모 개체의 주 키가 자식 개체의 주 키에 포함 IE에서 실선으로 표시비식별 관계(Non identifying Relationship) 비식별 관계(Non-identifying Relationship) 부모 개체의 주 키가 자식 개체의 일반 속성으로 전이이

IE에서 점선으로 표시7장. 데이터베이스설계 (Page 61)

관계 선언

관계의 속성에 따라 두 개체를 연결식별/비식별 관계 식별/비식별 관계

1:1/1:n/n:n

1:n 비식별 관계의 적용 예교수 학생

사원번호

이름전화번호

학번

이름학과명전화번

연구실전공

전화번호이메일사원번호 (FK)

관계를 선택한 후(right-button), 속성 변경 가능

7장. 데이터베이스설계 (Page 62)

n:n 관계의 해소(1)

n:n 관계를 해소하는 이유n:n 관계는 별도 테이블로 구현되어야 함 n:n 관계는 별도 테이블로 구현되어야 함

ERD를 테이블 스키마로 변경(ERwin에서는 물리적 모델링이라 함)하기 위해서 n:n 관계를 두 개의 1:n 관계)로 전환

n:n 관계 생성

n:n 관계를생성한후, transformation toolbar : 관계를생성한후,1:n 관계로전환

7장. 데이터베이스설계 (Page 63)

n:n 관계의 해소(2)학생

학번과목

과목이름학과명전화번호

과목코드

과목명학점 수전공구분 이메일전공구분

전환전환

학생

학번

이름

과목

과목코드

수강

과목코드 (FK)학번 (FK)

이름학과명전화번호이메일

과목명학점 수전공구분

학번 (FK)

성적

개체 명 변경 성적 속성 추가

7장. 데이터베이스설계 (Page 64)

개체 명 변경 & 성적 속성 추가

논리적 모델링의 완성

학생

학번학번

이름학과명전화번호

과목

과목코드

과목명

수강

과목코드 (FK)학번 (FK) 전화번호

이메일지도교수 (FK)

과목명학점 수전공구분

성적

교수

사원번호강의 사원번호

이름전화번호연구실

강의

과목코드 (FK)사원번호 (FK)

연구실전공

7장. 데이터베이스설계 (Page 65)

5.3 ERwin을 이용한 물리적 모델링

Default Data Type 정의 Logical Physical로 전환 Logical Physical로 전환 Target Database 선택 (초기에 DB 선택하지 않은 경우) Table의 저장 이름 정의 Table의 저장 이름 정의 속성의 data type과 size 변경

7장. 데이터베이스설계 (Page 66)

Default Data Type 정의 [Model] [Model Properties…] 메뉴 선택

Defaults 탭의 Default Datatypes을 가장 많아 사용될 Defaults 탭의 Default Datatypes을 가장 많아 사용될것 같은 타입으로 설정

7장. 데이터베이스설계 (Page 67)

Logical Physical로 전환

7장. 데이터베이스설계 (Page 68)

Target Database 선택

Physical로 변경한 후 [Actions] [Target Database ] 메뉴 선택 [Actions] [Target Database…] 메뉴 선택

7장. 데이터베이스설계 (Page 69)

Table의 저장 이름 정의 [Model] [Tables…] 메뉴 선택

Physical Name에서 테이블의 저장이름 선언 Physical Name에서 테이블의 저장이름 선언

7장. 데이터베이스설계 (Page 70)

속성의 data type과 size 변경 다이어그램에서 [right button] [Column Properties…] 선택선택 Physical Name과 Physical Data Type 선택

7장. 데이터베이스설계 (Page 71)

물리적 모델링 완료

student

student_id: NUMBER

name: VARCHAR2(20)dept_name: VARCHAR2(20)

l VARCHAR2(20)

course

course_id: NUMBER

VARCHAR2(20)

enrollment

course_id: NUMBER (FK)student id: NUMBER (FK) tel: VARCHAR2(20)

email: VARCHAR2(20)advisor: NUMBER (FK)

name: VARCHAR2(20)credit: NUMBER(1)category: VARCHAR2(20)

student_id: NUMBER (FK)

grade: VARCHAR2(2)

professor

f id NUMBERl t prof_id: NUMBER

name: VARCHAR2(20)tel: VARCHAR2(20)office: VARCHAR2(20)

lecture

course_id: NUMBER (FK)prof_id: NUMBER (FK)

office: VARCHAR2(20)major: VARCHAR2(20)

7장. 데이터베이스설계 (Page 72)

5.4 ERD를 테이블로 전환

스키마 생성 Option 결정 생성된 Script를 검사 생성된 Script를 검사 DBMS 연결과 Script 실행

7장. 데이터베이스설계 (Page 73)

스키마 생성 Option 결정 [Actions] [Forward Engineer] [Check Model]로 현재까지 작성된 물리적 모델 검증

[Actions] [Forward Engineer] [Schema] 선택

option을선택선택

생성된스크립트 확인

7장. 데이터베이스설계 (Page 74)

생성된 Script를 검사

SQL script를 확인한 후, 문제가 없으면

7장. 데이터베이스설계 (Page 75)

Q p ,DBMS에 script 전송

DBMS 연결 [Actions] [Database Connections] 메뉴 선택

Oracle net service 이름

7장. 데이터베이스설계 (Page 76)

Recommended