[erwin] erwin Data Modeler 12 Standard Edition - ERD 생성 / Forward Engineering / Reverse Engineer

EUN JY·2022년 9월 2일
1

Database

목록 보기
14/21

erwin 실행

  • erwin.exe 우클릭 > 속성 > 호환성 > 높은 DPI 설정 변경 > 응용프로그램으로 변경
  • erwin.exe 실행

관계(Relationship)

  • 재귀 관계
    • 비식별 관계로 설정하여 null 값 허용 필요 > Non-Identifying
  • 일반화 관계
    • Exclusive : 반원에 X 표시, 구분 속성은 무조건 딱 하나 선택할 수 있음
    • Inclusive : 구분 속성 다중 선택 가능

erwin

  • ctrl + N > logical/physical 선택, Oracle 21c 선택하여 모델 생성
  • Subject Area = 주제 영역
    • 라이브러리 안에 파일 안에 Subject Area
    • Subject Area 생성하여 선택
  • Model 우클릭 > Properties > 모델명 수정
  • Model 우클릭 > Properties > Notation > Logincal/Physical Notation > Information Engineering 선택
  • 저장 시 .erwin 파일으로 저장됨

Properties 설정

  • 다이어그램(배경) 우클릭 > Properties
  • Entity > 아래 항목만 체크
    • Show Attributes/Columns as Grid
    • Display Attribute Domain
    • Display Logical Foreign Key Designator
    • Display Logical Alternate Key Designer
    • Display Migrated Attributes
  • Table > 아래 항목 체크
    • Show Attributes/Columns as Grid
    • Display Column Data Type
    • Display Column Null Option
    • Display Physical Foreign Key Designator
    • Display Ungenerated Tables

관계별 설정

  • 병렬 관계의 단일화 해소
    • 관계 더블 클릭 > Role Name > Role Name 설정
    • 서로 다른 이름으로 설정하여 단일화 해소
  • 재귀 관계
    • 사원코드 PK > Role Name 설정

일반화 관계

  • 엔터티 간 유사성 존재 시, 유사성을 모아 하나의 엔터티 생성
  • Sub-Category 선택 > 사원여자사원 엔터티 연결, 반원 모양남자사원 엔터티 연결
  • 반원 모양 우클릭 > Properties
  • Exclusive 선택된 것 확인, Discriminator > 성별을 구분자로 선택하여 성별에 따라 딱 하나만 선택할 수 있도록 함

물리 모델 Naming

  • 물리 모델의 엔터티(테이블), 속성(컬럼)명 용어사전을 이용해 변경
  • Tools > Naming Standards > New > '용어사전' 이라는 이름으로 생성
  • Glossary > Import form CSV > 엑셀 .csv 파일을 가져온 후 Close

Domain 설정

  • Subject Area > Domains > New > 도메인 생성
  • 도메인 우클릭 > Properties > Logical Data Type > 타입 지정 후 Close
  • 엔터티 우클릭 > Attribute Properties > 속성의 Parent Domain > 설정했던 Domain명 클릭하여 설정

컬럼 정렬

  • Physical 모드에서 정렬하기
    • 교육자료 참고 75p Chapter 6 > erwin 12.0 교육자료 220902
      Column Properties > Reset Order > Reset All > Reset all Tables in model 선택, Reset column order to match attribute order
  • Physical order 순으로 DDL Script를 만들어 사용

실습

Forward Engineering

  • 모델을 이용해 DDL Script 생성하기
  • Physical 모드에서 사용
  • Actions > Schema
    • Column > Physical Order 체크 해제 (Column Order로 적용되도록 함)
    • Index > Foreign Key 체크
  • Next 눌러 Preview로 넘어가 DDL Script 확인
  • 창닫기
  • Model > Script Templates > 새로 만들어서 아래와 같이 세팅
  • 스크립트 입력(논리명을 물리 모델의 Comments로 설정)
    • 교육자료 참고 > 2.Column Comment에 논리속성명 생성하기_Pre & Post Script.pdf
COMMENT ON TABLE %TableName IS '%EntityName()';
%ForEachAtt() {
COMMENT ON COLUMN %TableName.%ColName is '%AttName';
}
  • Script Template Browser(상단 체인 아이콘) > 적용할 테이블 설정
  • Expand > 아래와 같이 나오는 것 확인
COMMENT ON TABLE TB_METR IS '전력량계';

COMMENT ON COLUMN TB_METR.METR_NO is '전력량계번호';
COMMENT ON COLUMN TB_METR.METR_LOC_NM is '전력량계위치명';
COMMENT ON COLUMN TB_METR.METR_SAV_LOC_VAL is '전력량계저장위치값';
COMMENT ON COLUMN TB_METR.METR_MNFCT_YM is '전력량계제조년월';
  • Actions > Schema > Option Selection > Table > Post-Script 선택
  • Next 눌러 Preview로 넘어가 DDL Script 확인 및 저장

Reverse Engineer

  • DDL Script를 이용해 모델 생성하기
  • Actions > Reverse Engineer > Script File 선택 후 DDL 스크립트 선택 > Next 및 OK
  • Logical 모드로 변경 시에도 영문명으로 나오는 것 확인
  • 교육자료 참고 > 3.Comment를 이용한 논리명 일괄변경 방법.pdf
profile
개린이

0개의 댓글