Forward engineering 이란?
"Forward engineering is the process of building from a high-level model or concept to build in complexities and lower-level details."
"복잡한 하위 레벨의 디테일을 구축하기 위해 상위 모델을 만드는 작업"
erwin의 경우로 생각해보면,
erwin에서 생성한 Entity들을 sql ddl 문으로 변경시키는 것이다.
Reverse engineering 이란?
"Forward engineering is thus related to the term 'reverse engineering,’ where there is an effort to build backward, from a coded set to a model, or to unravel the process of how something was put together."
"코드에서 모델로, 어떤 프로세스의 생성 과정을 역추적하는 방법"
Forwarding engineering의 반대 개념으로써, sql ddl 문을 erwin entity로 변경시키는 것이다.
적용하기
- mysql 기준
생성할 테이블들이 db에 존재해 있고, 그것들을 지우고 다시 만들고 싶은 경우는 DROP TABLE을 체크하자.
Procedure의 경우도 마찬가지. 이미 존재하고, 그것들을 지우고 다시 만들고 싶다면 Drop procedure을 체크.
필요없다면 체크를 해제해도 된다.
preview를 선택하면 ddl문을 확인할 수 있다. 복사/붙여넣기 하여 사용하면 된다.
mysql의 경우에는 forward engineering에 그리 유의할 점은 없지만 oracle의 경우에는 신경써야 하는 부분이 있다.
- Oracle 기준
Option Selection -> Trigger -> erwin Generated 체크 해제
erwin Generated는 erwin으로 부터 무언가가 자동으로 생성이 되는데, 이것은 오히려 Oracle에서 DML을 실행할때 문제가 될 수 있다. 그러니 체크를 해제하도록 하자!
'개발 > 기타' 카테고리의 다른 글
Mockito verify()에서 파라미터 까지 검증하고 싶은 경우 (4) | 2024.05.29 |
---|---|
nullable한 값을 반환하는 집계함수 (0) | 2022.10.14 |
Ubuntu 서버에 Docker로 스프링부트 Jar 배포 (feat Redis) (0) | 2022.01.06 |
[Maven/JSP/파이썬] 파이썬 Client에서 JSP Server로의 파일 데이터 전송(feat. MultipartRequest) (0) | 2021.03.27 |
aws 우분투 리눅스 tomcat9 서버에 war 파일 배포하기 (0) | 2021.01.22 |
이전 댓글