데이터베이스 설계 및 실습 #8 - ER-Win 한국외국어대학교 DaPS 연구실
ER-Win 설치하기 http://www.msn.co.kr hotmail로그인 ID : hufs2010_@hotmail.co.kr passwd : kljklj hotmail -> SkyDrive -> 문서 -> DB설계 -> 파일 다운로드
ER-Win 실행 1.시작-[프로그램] [Computer Associates] – [AllFusion] – [ERWin Data Modeler] – [ERWin] 을 실행한다. ModelMart Connection Manager 과정은 Cancel을 눌러 생 략한다.
ER-Win 실행 2. ‘Create a new model’ 옵션 선택한 후 OK 버튼 누른다.
ER-Win 실행 3. Create Model 대화상자가 나타나면 ‘Logical/Phygical’ 옵션을 선택한다. Target Database 옵션이 나타나면 ORACLE 9.x 을 선택하고 OK 버튼을 누른다.
Logical 영역과 Phygical 영역 개념적 데이터 모델링을 제외한 논리적/물리적 데이터 모델링 지원 ER-Win은 관계형 데이터베이스 모델링 CASE Tool이기 때문에 관계형 데이터베이스 이론에 입각해서 스키마를 설계하는 논리적 모델링과 물리적 모델링을 지원한다. CASE (Computer Aided Software Engineering) Tool : 프로그램을 개발하는데 사용되는 프로그램 자동화 도구. 일반적인 프로그램 툴과의 차이점은 개발 방법론에 입각한 프로그래밍 자동화 도구라는 것이다. 개념적 데이터 모델링을 지원하지 않는 이유는 개념적 데이터 모델링은 업무를 일반화시키는 단계이지 관계형 데이터베이스 이론에 입각해서 모델링을 하는 단계는 아니기 때문이다. ER-Win을 사용하기 위해서는 먼저 업무분석과 함께 엔티티와 속성 그리고 관계 등이 정의된 양식이 있어야 하며 이를 ER-Win으로 옮기면서 관계형 데이터베이스 모델링 이론에 입각해서 스키마를 설계하게 된다.
ER-Win 메인 화면 Model Explorer 도구모음 다이어그램
ER-Win 의 표기 방식 IDEF1X(Integration DEFinition for Infornation Modeling) 표기방식 - 미 국방성에서 프로젝트 표준안으로 개발한 표기 방식 IE(Information Engineering) 표기방식 - 정보공학 표기 방식으로 우리가 일반적으로 모델링을 할 때 가장 많이 사용하는 유형 ER-Win을 설치하면 기본적으로 Indeflx방식으로 설정되어있다.
ER-Win 의 표기 방식 1. ER-Win 메뉴에서 [Model] – [Model Properties…]를 선택한다. 2. Notation 탭의 Logical과 Physical Notation 영역에서 IE 옵션 버튼을 선택한다.
ER-Win 의 표기 방식 표기 방식을 Idef1x 방식에서 IE 방식으로 바꾸어 설정하면 ERWin Toolbox 의 모습이 위의 그림처럼 바뀌게 된다. ERWin Toolbox 는 엔티티를 생성하고 관계를 정의하는데 사용하는 도구모음이다. IDEF1X IE
엔티티(Entity) 생성 Toolbox의 두 번째 버튼 선택 후 다이어그램에 클릭한다. 엔티티 형식 E/1 세 영역 간의 이동은 Tap으로 가능. 일반 속성 영역에 속성은 엔터로도 추가 가능. E/1 엔티티(Entity) 명 기본키(Primary Key) 영역 일반 속성(Attribute) 영역
엔티티(Entity) 생성 ▼만들어보세요 엔티티 예시(Employee) 일반 속성(Attribute) 추가하기 엔티티에서 오른쪽 마우스 클릭
엔티티(Entity) 생성 기본키 설정하기 엔티티에서 오른쪽 마우스 클릭 Key Group Members 에 기본키가 될 Attribute 를 추가해준다.
식별 관계, 비식별 관계 관계 - 두 엔티티 간의 업무적인 연관성 식별 관계 비식별 관계 부모 테이블의 기본키가 자식 테이블의 기본키 혹은 후보키 그룹의 구성원으로 전이되는 것 비식별 관계 부모 테이블의 기본키가 자식 테이블의 일반 컬럼으로 전이되는것
식별 관계, 비식별 관계 식별 관계와 비식별 관계의 정의 ERWin Toolbox의 버튼을 이용 한다. Identifying Relationship (식별 관계 정의) Not Identifying Relationship (비식별 관계 정의)
만들어보세요 관계 설정 관계에 관한 옵션 설정 관계 선 클릭 후 부모 테이블과 자식 테이블을 차례로 선택. (식별 관계는 실선, 비식별 관계는 점선으로 나타남) 관계에 관한 옵션 설정 관계 선 클릭 후 오른쪽 버튼의 팝업 Relationship Properties 선택.
관계 옵션 설정 관계타입 1:1 / 1:n / m:n
관계 옵션 설정 Verb Phrase 보이기 다이어그램에서 오른쪽 클릭 Relationship Display에서 Verb Phrase 체크 식별관계 비식별관계
Many-to-Many Relationship 다 대 다 관계 정의 ER-Win Toolbox에서 관계선 클릭 후 두 엔티티를 순서와 상관 없이 선택. Many-to-Many Relationship (다 대 다 관계 정의) ▼만들어보세요!
다 대 다 관계 해소 1. Transform Wizard 실행 (2가지 방법) Click 관계선에서 오른쪽 버튼 클릭 후 Create Association Entity 선택 관계선 선택 후 Transform toolbar에서 Many to Many Transform 버튼 클릭 Click
다 대 다 관계 해소 2. 다음 버튼을 누르고 새롭게 추가될 엔티티 명 입력. 3. Transform Name을 기본값으로 설정 후 다음으로 진행. 4. 현재 작업에 대한 정보가 나오면 작업을 완료 한다.
다 대 다 관계 해소 다 대 다 관계를 해소하면 다음과 같이 엔티티들이 정의 된다. ORDER와 관계를 맺고 있는 두 엔티티가 식별 관계로 나타남. -> 식별관계가 아니므로 비식별 관계로 변경 필요.
다 대 다 관계 해소 관계선 클릭 후 오른쪽 버튼의 Relationship Properties… 메뉴의 Relationships 대화상자에서 다음 옵션 선택 Non-Indentifying No Nulls
다 대 다 관계 해소 주문테이블의 다른 속성을 추가하여 엔티티를 완성한다.
재귀적 관계 정의 재귀적 관계 : 자기 자신과 관계를 맺는 것 만들어보세요! 비식별 관계선을 이용하여 재귀적 관계를 정의 관계선을 선택한 후 동일한 엔티티 두 번 클릭 만들어보세요!
재귀적 관계 정의 Rolename 정의 ⇒ Relationships 대화상자에서 Rolename 탭을 선택한 후 Rolename입력상자에 속성명을 기술 (‘Super_ssn’라는 속성이 포린키로 전이됨)
과제 만들어보세요, 혼자해보세요 ER-win으로 그려서 화면 캡쳐해서 메일로 보내기 기한 : 오늘 자정까지 관계 써서 나타내기 기한 : 오늘 자정까지 메일 : eun1505.hufs@gmail.com 파일명, 메일제목 : [DB설계]학번_이름_날짜 오늘까지 못하면 리포트제출