Presentation is loading. Please wait.

Presentation is loading. Please wait.

데이터베이스 설계도구 ERWin 사용법 덕성여자대학교 Database Lab.

Similar presentations


Presentation on theme: "데이터베이스 설계도구 ERWin 사용법 덕성여자대학교 Database Lab."— Presentation transcript:

1 데이터베이스 설계도구 ERWin 사용법 덕성여자대학교 Database Lab

2 1. 사용법 - 프로그램 작동 프로그램 작동 시작->모든프로그램->Computer Associates->All Fusion-> ERwin Data Modeler->ERwin

3 1. 사용법 - 프로그램 작동 Click!

4 1. 사용법 - 프로그램 작동 새로운 다이어 그램 작정 기존의 파일 열어 내용 편집
Create a new model을 선택한 후 OK 버튼을 누른다.

5 1. 사용법 - 프로그램 작동 모든 옵션 선택을 마친 후 OK 버튼을 누른다. Logical/Physical 옵션 선택
을 자유로이 사용하기 위함 ORACLE 선택 현재 설치되어있는 ORACLE 버전 선택 모든 옵션 선택을 마친 후 OK 버튼을 누른다.

6 1. 사용법 - 프로그램 작동 도구/메뉴 Model Explorer 다이어 그램

7 1. 사용법 - 프로그램 작동 메인화면이 열리면 어떤 표기방법을 사용할것인지 정의해야함. - 두가지 표기법 지원
 IE (Information Engineering) - 정보공학표시, 일반적으로 가장 많이 사용  Ideflx (Integeration DEFinition for Information Modeling) - 미 국방성에서 프로젝트 표준안으로 개발한 방식. Default 값으로 Ideflx 방식으로 되어있음 -> IE 방식으로 변경

8 1. 사용법 - 프로그램 작동 Ideflx -> IE 방식으로 변경방법 Notation 탭 선택
메뉴 -> Model / Model Properties Toolbox 변경됨 IE 로 속성값 변경

9 2. 설계 - Logical / Physical 영역
관계형 데이타베이스 모델링 CASE Tool -> 관계형 데이터베이스 이론에 입각해서 스키마를 설계. 업무 분석/ 엔티티(Entity) / 속성 (Attribute) / 관계 (Relation) 등이 정의되어있는 양식(ER-Diagram)이 필요. -> 이를 ER-Win으로 옮기면서 관계형 데이타베이스 모델링 이론에 입각하여 스키마 설계 Logical / Physical 데이타모델링 전환시 콤보박스 이용 선택.

10 2. 설계 - 엔티티(Entity) 생성 엔티티 -> 데이터로 관리되어야 하는 항목 엔티티(Entity)명
기본키(Primary key) 영역 엔티티 생성위해 클릭 일반속성(Attribute) 영역 다음과 같이 엔티티를 만들어보자 Title Font 변경 작성 후 탭 키를 이용하면 다음으로 넘어갈 수 있음. 작성 후 엔터 를 치면 새로운 속성을 기술할 수 있음.

11 2. 설계 - 식별/비식별 관계 관계 ; 두 엔티티 간의 업무적인 연관성 - 유형  식별
- 부모테이블의 기본키 혹은 복합키가 자식테이블의 기본키 혹은 복합키의 구성원으로 전이  비식별 - 자식테이블의 일반 속성(Attribute) 그룹의 구성원으로 전이 비식별 관계의 관계선 식별 관계의 관계선

12 2. 설계 - 식별/비식별 관계 다음과 같이 부서, 신체정보 테이블을 추가하자. 관계 맺는 방법
Erwin Toolbox 에서 관계선 선택 부모테이블 선택 후 자식테이블 선택 부서는 사원의 부분적인 정보를 표현하므로 일반 속성 그룹의 구성원임. 부서와 사원테이블의 관계는 비식별 관계. 식별관계 비식별관계 사원들 개개인의 신체정보를 저장하게 되므로 사원 테이블의 기본키가 신체정보 테이블의 기본키로 전이 되어야 하므로 사원과 신체정보 테이블 관계는 식별 관계.

13 2. 설계 - 식별/비식별 관계 관계 옵션 설정 (비식별) [ 테이블관계 선택/오른쪽버튼/팝업메뉴/RelationshipProperties ] Cardinality(차수)는 두 테이블에서 레코드들의 매칭되는 정보를 정의 여기서는 하나의 부서에 사원이 없을 수도, 한 명만 있을 수도 아니면 여러 명 있을 수도 있으므로 Zero, One or More 옵션 선택

14 2. 설계 - 식별/비식별 관계 Verb Phrase 는 부모와 자식(Parent-to-Child) 그리고
자식과 부모(Child-to-Parent)의 관계에 대한 설명적인 문구 입력하는 곳임. 두 테이블 간의 관계에 대한 설명적인 내용을 정의. - Parent-to-Child ; 부서에 사원이 배정된다. - Child-to-Parent ; 사원은 부서에 소속된다. Relationship Type 은 비식별 관계 이므로 Non-Identifying 옵션이 선택되어짐. Null 옵션을 선택할 수 있는데 기본적으로 비식별 관계에서는 부모테이블에서 Null을 허용할 수 있게끔 옵션이 선택되어짐. 하지만 이것은 올바른 옵션 아니기 때문에 No Nulls 선택 선택후 OK 버튼을 누름.

15 2. 설계 - 식별/비식별 관계 ★ 모든 작업을 마친 후 ‘연습1.er1’ 으로 저장.
관계 옵션 설정 (식별) [ 테이블관계 선택/오른쪽버튼/팝업메뉴/RelationshipProperties ] Cardinality 옵션은 사원 테이블에 하나의 레코드는 반드시 신체정보 테이블에도 대응되는 하나의 레코드가 존재해야 하므로 Exactly 1 로 정의. 식별관계로 형성되어있을 경우에는 기본적으로 Null에 대한 옵션 설정이 비활성화 됨. 모든 과정을 마친후 OK 버튼 클릭 다음과 같이 완성됨 보이지 않는다면 다이어그램 빈공간에서 마우스 오른쪽 버튼/ Relationship Display Cardinality ★ 모든 작업을 마친 후 ‘연습1.er1’ 으로 저장.

16 2. 설계 - 다 대 다 관계 정의 다대다 관계선 다 대 다 관계는 논리적으로 존재 가능하지만 물리적으로는 존재하지 않음.
다음과 같이 테이블을 만든 후 다대다 관계를 정의해보자. 다대다 관계는 테이블을 생성후 순서에 관계없이 두 엔티티를 차례대로 선택하면 됨.

17 2. 설계 - 다 대 다 관계 정의 하나의 공급업체는 여러 개의 상품을 납품할 수 있음.
하나의 상품은 여러 공급업체에서 납품을 받을 수 있음. -> 공급업체와 상품 엔티티 간의 관계는 다대다 관계임. 하나의 상품은 여러 회원에게 판매 할 수 있음. 한 명의 회원은 여러 개의 상품을 구매할 수 있음. -> 상품과 회원 엔티티 간의 관계는 다대다 관계임. 대부분의 경우 다대다 관계를 풀어 교차실체(행위실체)를 정의해야함. -> 대부분의 업무적 프로세스와 상세 정보가 이 교차실체에서 정의됨.

18 2. 설계 - 다 대 다 관계 정의 다대다 관계를 해소하는 두가지 방법 다대다 관계를 선택후
‘Erwin Transform Toolbar’ 에서 선택 다대다 관계를 선택후 마우스 오른쪽 버튼 / Create Association Entity

19 2. 설계 - 다 대 다 관계 정의 1. 2. 다음 ‘입고’ 라고 정의 다음 4. 3. 다음 현재 작업 정보를 기록하는 것

20 2. 설계 - 다 대 다 관계 정의 공급업체와 상품 엔티티 간에 다대다 관계 해소
공급업체와 상품 엔티티 간에 정의 될수 있는 프로세스 상품과 회원 엔티티 간에 다대다 관계 해소 같은 방법으로 상품과 회원 엔티티 간에 정의될수 있는 프로세스인 판매를 추가해 보자.

21 2. 설계 - 다 대 다 관계 정의 모든 관계선을 차례대로 선택후 마우스 오른쪽 버튼 /
입고 / 판매 엔티티에 필요한 속성을 추가 ♣ 고려사항 - 입고/판매 엔티티에서 정의된것 처럼 두 개의 컬럼을 이용해서 각각의 레코드를 식별할수 없음. - 다른 속성을 추가로 입고/판매 엔티티의 기본키 그룹에 포함시키는것 또한 기본키가 지나치게 커지는 결과 낳음. -> 입고 엔티티[입고번호]를 판매 엔티티[판매번호]를 기본키로 정의 (이를 대리키라 함) 기존의 실체들과 교차 실체들과의 관계가 비식별 관계로 설정되어야 함. 모든 관계선을 차례대로 선택후 마우스 오른쪽 버튼 / Relationship Properties 에서 Non-Ideintifying , No Nulls 옵션 선택

22 2. 설계 - 다 대 다 관계 정의 ★ 내용이 완성된 후 ‘연습2.er1’ 파일로 저장
다음 그림처럼 다이어그램을 완성시켜보자. 다음 그림처럼 다이어그램이 완성됨. ★ 내용이 완성된 후 ‘연습2.er1’ 파일로 저장

23 2. 설계 - 도메인 설정 Domains 탭이 보이지 않을때. * 메뉴 / View / Model Explorer 선택
단가, 금액 등의 컬럼이 같이 쓰여지고 있음 -> 하나의 개체로 만들어 여러 엔티티에 적용 시키는것이 훨씬 편리. ♣ 이를 정의하기 위해서는 Model Explorer 의 Domain 탭에서 정의 Domains 탭이 보이지 않을때. * 메뉴 / View / Model Explorer 선택

24 2. 설계 - 도메인 설정 날짜라고 입력 같은 방법으로 수량, 단가, 금액도 만든다.(단, Number 형으로)
각 컬럼에 대한 속성 정의 - 날짜 : 문자열 - 수량, 단가, 금액 : 숫자형 날짜 정의 String 형을 선택 / 마우스 오른쪽 버튼/ New 날짜라고 입력 같은 방법으로 수량, 단가, 금액도 만든다.(단, Number 형으로)

25 2. 설계 - 도메인 설정 입고/판매 엔티티에서 일자, 수량, 완성하면 아래 그림과 같이 됨.
입고/판매 엔티티에서 일자, 수량, 단가, 금액에 관련된 속성 삭제. 완성하면 아래 그림과 같이 됨. 삭제한 후 Domain 탭에 있는 금액, 날짜, 단가, 수량 등을 선택 해서 드래그하고 입고 엔티티와 판매 엔티티에 드롭함.

26 2. 설계 - 도메인 설정 모든 속성을 드롭하면 다음과 같음. - 속성명 앞에 해당 엔티티명을 추가하는 방법
Model Explorer Domains 하위 폴더중 하나를 선택하여 마우스 오른쪽 버튼을 누른뒤 Properties 메뉴 선택

27 2. 설계 - 도메인 설정 다음과 같은 결과를 얻을수 있음. 3. 각 폴더마다 같은 방법으로 적용.
2. 다음과 같은 Domain Directory 대화상자가 나타나면 필요사항을 선택. 다음과 같은 결과를 얻을수 있음. 데이터 타입에 따른 속성들의 정렬된 모습을 볼수 있음 - %EntityName%AttDomain 이라고 정의하면 적용되는 모든 속성명 앞에 엔티티명이 함께 붙어 정의됨. 3. 각 폴더마다 같은 방법으로 적용.

28 2. 설계 - 물리적(Physical) 모델링 물리적 모델링으로 전환하는 방법
다음과 같은 Target Server 대화상자가 나옴. -> 이곳에서 원하는 RDBMS와 Version을 선택. 만약 데이타베이스를 선택하지 않았다면 메뉴/Database/Choose Database 선택 (단, 물리적 모델링으로 전환해야 Database 메뉴가 보임) 논리적 -> 물리적 모델링으로 전환하는 경우 - 엔티티 -> 테이블로 변경 - 속성 -> 컬럼으로 변경

29 3. 설계연습 – 논리 모델 연습 다음의 개체를 정의한다. STUDENT 개체 COURSE 개체

30 3. 설계연습 - 논리 모델 연습 다음의 관계를 정의한다 1:N 관계 연습 N:M 관계 연습

31 3. 설계연습 - 물리 모델 연습 다음의 관계를 정의한다 N:M 관계 논리 모델 N:M 관계 물리 모델

32 3. 설계연습 - 스키마 생성 다음의 관계를 정의한다 N:M 관계 물리 모델 코드 생성 테스트
- Tools => Forward Engineer/Schema Generation => Preview

33 4. 수강신청 프로젝트 – 1단계 논리 모델 다음의 개체를 정의한다. PROFESSOR 개체 STUDENT 개체
COURSE 개체

34 4. 수강신청 프로젝트 – 2단계 논리 모델 1단계 모델의 many to many realtionship에 create association을 실행한다 - TEACH, ENROLL 개체 생성

35 4. 수강신청 프로젝트 – 3단계 물리 모델 2단계 모델을 physical 설계로 바꾸어 속성을 설정한다.

36 4. 수강신청 프로젝트 – 4단계 Forward Engineering/Schema Geneartion
(1) 먼저 기존 스키마를 제거한다. drop table teach drop table enroll drop table student drop table professor drop table course (2) 서버에 접속하여 코드 생성 Tools => Forward Engineer/Schema Generation => Genarate

37 4. 수강신청 프로젝트 – 4단계 Forward Engineering/Schema Geneartion
(3) 스키마 생성 확인 desc teach desc professor select * from professor (4) 데이터 삽입 insert into …. (삽입 소스 코드) (5) 데이터 확인 (끝)


Download ppt "데이터베이스 설계도구 ERWin 사용법 덕성여자대학교 Database Lab."

Similar presentations


Ads by Google