ERWin에서 ERD를 먼저 작성하고 Database를 구성하면 좋겠지만
실무를 하다 일정이 짧은 프로젝트를 하다 보면 프로젝트 완료후에 완료보고서를
작성하는 최종단계에서 ERD를 작업해야 할 경우가 있다.. 이럴 경우..
대략 난감..
이런경우를 위해 ERWin에서는 Reverse Engineer기능을 이용하여 Database부터 Model를
가져올 수 있다..
(*) Reverse Engineer를 이용하여 Database 구조를 가져왔을 경우
모든 attribute name이 영문으로 되어 있다 이럴 경우 한글로 변경하는 방법
: 참고로 Database에 Comment에 한글 Description이 작성되어 있어야만 한다.. 물론 되어 있겠지만..
이와 같이 하면 Database에 등록된 한글Comment를 attribute name으로 가져올 수 있다.
참고로 이렇게 가져올 경우 Logical의 attribute name과 Physical의 column name이 모두 변경된다..
이렇게 변경될 경우를 방지 하기 위해서는 ERWin r7.2부터 지원하는 Name Hardening기능을 사용하여서 논리와 물리의 column명의 Sync를 해지 시킨 후에 위의 기능을 사용하면 논리모델만 attribute name이 변경된다..
([Tools]->[Names]->[Name Hardening] 마법사사용 또는 바탕화면에서 테이블 하나를 선택한 후에 바탕화면에서 오늘쪽 마우스를 클릭하여서 [Harden Physical name] 해제) -- 참고 사이트 --
- 이와 같은 문제는 논리의 attribute명과 물리의 Column명이 동일 할 경우 논리의 attribute명이 변경되면 물리의 Column명이 함께 변경되는 기능때문이다.
그러나 애석하게도 내가 사용하는 버전이 r7.2 하위 버전이라 이 기능을 지원하지 않는다..
물론, 꼼수를 사용해서 작업을 하였다..
[꼼수]
1. [Reverse Engineer] 실행
2. Physical의 Column Name에 모두 뒤에 -(하이픈)을 삽입 <= 노가다 작업이당.
3. Logical Model에서 attribute명을 Column Comment로 변경
4. Physical의 Column Name의 뒤에 붙은 -(하이픈) 삭제 <= 노가다 작업
ㅎㅎ 뛰어나지 않나요..
실무를 하다 일정이 짧은 프로젝트를 하다 보면 프로젝트 완료후에 완료보고서를
작성하는 최종단계에서 ERD를 작업해야 할 경우가 있다.. 이럴 경우..
대략 난감..
이런경우를 위해 ERWin에서는 Reverse Engineer기능을 이용하여 Database부터 Model를
가져올 수 있다..
1. [Tool] -> [Reverse Engineer]
: Model Type을 선택하고 Database의 종류를 선택한 후에 [Next]선택
2. 가져올 아이템을 선택하고 [Next]
: 대형 사이트일 경우 Database의 StoredProcedure나 View의 경우는 제하고 가져오는 것이 좋다
3. [SQL Connection] -> 완료
: Database 접속 정보를 기입하고 [Connect]
: Model Type을 선택하고 Database의 종류를 선택한 후에 [Next]선택
2. 가져올 아이템을 선택하고 [Next]
: 대형 사이트일 경우 Database의 StoredProcedure나 View의 경우는 제하고 가져오는 것이 좋다
3. [SQL Connection] -> 완료
: Database 접속 정보를 기입하고 [Connect]
(*) Reverse Engineer를 이용하여 Database 구조를 가져왔을 경우
모든 attribute name이 영문으로 되어 있다 이럴 경우 한글로 변경하는 방법
: 참고로 Database에 Comment에 한글 Description이 작성되어 있어야만 한다.. 물론 되어 있겠지만..
1. ERWin에서 Logical Model을 선택
2. [Model] -> [Domain Dictionary] 선택
3. 우측 General 항목중에 Name Inherited by Attribute 항목을 [%AttDomain] => [%ColumnComment]로 변경 -> [ok]
: 이 부분은 attribue name을 Column Comment로 받아오겠다는 부분이다. 이 부분에 사용하는 값은 아래 Macro Toolbox에 정의되어 있다..
4. [Model] -> [Attributes] -> [Reset]
5. [Remove overridden properties for ]부분을 [Reset all attributes in model]로 선택
6. 하단의 선택 property를 [Name]만 선택 -> [OK]
2. [Model] -> [Domain Dictionary] 선택
3. 우측 General 항목중에 Name Inherited by Attribute 항목을 [%AttDomain] => [%ColumnComment]로 변경 -> [ok]
: 이 부분은 attribue name을 Column Comment로 받아오겠다는 부분이다. 이 부분에 사용하는 값은 아래 Macro Toolbox에 정의되어 있다..
4. [Model] -> [Attributes] -> [Reset]
5. [Remove overridden properties for ]부분을 [Reset all attributes in model]로 선택
6. 하단의 선택 property를 [Name]만 선택 -> [OK]
이와 같이 하면 Database에 등록된 한글Comment를 attribute name으로 가져올 수 있다.
참고로 이렇게 가져올 경우 Logical의 attribute name과 Physical의 column name이 모두 변경된다..
이렇게 변경될 경우를 방지 하기 위해서는 ERWin r7.2부터 지원하는 Name Hardening기능을 사용하여서 논리와 물리의 column명의 Sync를 해지 시킨 후에 위의 기능을 사용하면 논리모델만 attribute name이 변경된다..
([Tools]->[Names]->[Name Hardening] 마법사사용 또는 바탕화면에서 테이블 하나를 선택한 후에 바탕화면에서 오늘쪽 마우스를 클릭하여서 [Harden Physical name] 해제) -- 참고 사이트 --
- 이와 같은 문제는 논리의 attribute명과 물리의 Column명이 동일 할 경우 논리의 attribute명이 변경되면 물리의 Column명이 함께 변경되는 기능때문이다.
물론, 꼼수를 사용해서 작업을 하였다..
[꼼수]
1. [Reverse Engineer] 실행
2. Physical의 Column Name에 모두 뒤에 -(하이픈)을 삽입 <= 노가다 작업이당.
3. Logical Model에서 attribute명을 Column Comment로 변경
4. Physical의 Column Name의 뒤에 붙은 -(하이픈) 삭제 <= 노가다 작업
ㅎㅎ 뛰어나지 않나요..

댓글을 달아 주세요
관리자만 볼 수 있는 댓글입니다.
ㅎ 제네시스에도 못찾던걸 찾았네요 유용하게 잘쓰겠습니다.
리버스 엔진 실행시 db접속후 시스템이 다운되버리는데요,,,서브에 있는내용의 용량이 너무많아서 그런게 아닌가생각합니다,,,서브에 많은 메뉴중 선택해서 가져올수 있는 방법은 없나요??
*** erwin 7.2xxx에서 오라클db접속해서 해당내용가져올때???
asciii@paran.com
감사합니다. 저도 이렇게 했는데, 정리가 잘되어서 잘 보았습니다.
근데 테이블명까지는 논리명으로 안바뀌는것 같아요. 그건 수동으로 해야겠쬬...
감사합니다.
오래전부터 찾던자료인데
좋은정보 감사합니다.
잘쓰겠습니다.