DB관련/MS-SQL

ERWin Data Modeler에서 스크립트 생성 (MSSQL용)

길동무 2021. 3. 3. 09:50
728x90

ERWin Data Modeler를 가지고 스크립트를 생성하기를 해보기로 한다.

 

사용될 프로그램 정식 명칭과 버전은 CA ERwin Data Modeler 이고 7.3.4.1822 버전이다.

 

ERwin으로 처음에 ERD를 생성할때 DB와 버전을 선택하기가 있다.

이 부분에서 추후 스크립트를 생성할때 해당 DB 에 맞는 스크립트가 생성이 되니

처음에 잘 선택을 해야만 한다.

 

최초 생성시 DB와 버전 선택 부분

 

일단 여기서는 MSSQL에 대한 스크립트를 생성해보도록 하겠다.

Logical/Physical 로 만들어진 파일을 가져와서 연다.

 

그리고 생성 쿼리 생성시 사용될 뒤에 스크립트를 등록을 해야하는데

아래와 같은 스텝으로 진행한다.

 

1. Physical 모델로 전환

2. 메뉴 > Database > Pre & Post Scripts .. 선택

3. 아래와 같이 뜨면 '신규' 아이콘 클릭하여 상단 행 추가 

4. 추가된 행에 대해서 아래 표와 같이 입력

Name Type Generate As Attach To New Generate
임의로 생성됨(수정 불필요) Model Level Post-Creation UnCheck Check

5. 하단 code 탭에 하단의 스크립트를 추가 (다시 말하지만 MSSQL 기준 임)

%ForEachTable() {
 exec sp_addextendedproperty 'MS_Description' , '%EntityName' , 'user' , 'dbo' , 'table' , '%TableName'
 go
  
%ForEachColumn() {
 exec sp_addextendedproperty 'MS_Description' , '%AttName' , 'user' , 'dbo' , 'table' , '%TableName' , 'column' , '%ColName'
 go
 }
 }

6. close를 하면서 저장처리

 

이제 스크립트는 등록이 되었으니 실제로 쿼리 생성을 진행해보자.

 

(Physical 기준) 메뉴 > Tools > Forward Engineer > Schema Generation 선택 (아래 그램 참고)

 

하단과 같이 창이 뜬다. 

일단 생성되는 디폴트 기준으로 우측에 선택이 되어져 있다. 

우리는 이것을 수정해서 따로 저장을 추후에 할 예정이다. 

나중에 다시 이  설정파일만 불러와서 바로바로 생성 하기 위함이다.

 

일단 테이블에 대한 부분만 생성을 할 예정이어서 다른 건 다 Uncheck를 하고 

아래 이미지와 같이 Schema에 있는 'Post-Script'와 Table에 있는 'Create > Table' 만 선택한다.

 'Post-Script' 는 이미 위에서 등록한 부분을 실행시키기 위함이다.

 

다 되었다면 실행시킬 준비는 끝난 것이다. 

 

위에 이미지에서도 표시는 되었지만 'Preview...'는 생성 쿼리를 미리보거나 생성된 쿼리를 

복사 또는 파일로 저장할 수 있다.

그리고 'Generate...' 은 해당 연결된 DB로의 실제 Object등을 생성하기 위함이다. 

 

내 경우에는 'Generate...' 로 처리하려고 하면 직접 DB에 영향을 주는 부분 때문에 부담이 되고

또 알게모르게 필요없는 것들이 생성이 되어서 이걸로 잘 처리하지는 않는다.

 

그래서 'Preview...' 에서 생성된 쿼리를 저장하여 별도로 생성을 하는 방식으로 처리한다.

 

지금까지 설정하는 방법과 실행하는 방법을 설명하였고

해당 설정된 정보는 'Save' 나 'Save As...' 버튼을 이용하여 따로 저장해서

계속 불러와서 사용하도록 하면 더 편리할 것이다.

 

 

반응형