ERwin에서 코멘트나 PK명칭 자동 반영처리 본문

DB관련/Oracle

ERwin에서 코멘트나 PK명칭 자동 반영처리

반응형

erwin 을 사용하다 보면 코멘트나 pk를 일일이 입력을 해야하는 불편함이 더러있는데요.

이 부분을 손쉽게 반영하는 방법을 알아 보겠습니다.

 


우선 논리명을 물리모델의 코멘트로 부여하는 방법입니다.

 

1. Physical Model에서 좌측 트리에서 Domains 아래에 첫번째 도메인을 선택합니다.


2. 우클릭 이후에 property로 들어가면 아래와 같이 창이 뜨는데요. Commnet탭을 선택한 뒤 

    하단에 Comment Inherited by Col에 %AttDef 를 대신해서 %AttName 입력합니다.

3. 만약 가지고 있는 Erwin 버전이 2019 버전의 이전 버전이라면 아래를 추가적으로 더 해줘야 합니다.
4. 테이블 더블클릭해서 reset버튼 클릭하시고, Comment 체크하고 OK 를 누르세요.

 

이렇게 하면 자동으로 물리모델의 코멘트에 값이 들어와 있습니다.

 


두번째로는 물리모델의 PK명칭을 원하는 방식으로 부여해주는 방법입니다.

 

1. 이것도 역시  Physical Model에서 시작합니다.

2. actions 에서 Model Naming Options 를 선택합니다. 

    2019 이전 버전이라면 tools 에서 names 를 선택 한 뒤 Model Naming Options 를 선택합니다. 

3. Model Naming Options 창에서 Name Mapping 탭을 선택하면 아래와 같이 보이는데요. 

   일단 저는 Key Group to index 의 값이 이미 변경이 되어 있어서 다르게 보일 겁니다.

    제가 처리한 방식은 PK_%Substr(%TableName, 4,%Len(%TableName)) 인데요.

    물리테이블명에서 무조건 4번째 자리부터 끝까지 자른 것에다가 앞에 무조건 PK_ 를 붙힌 형태입니다.

4. 이렇게 변경하신 다음에 아래 reset Names 를 클릭하시면 팝업창이 아래와 같이 뜨는데요.

    All Index Names 만 선택하시고 OK 버튼을 누르면 반영이 됩니다. 

5. 확인하는 방법은 물리 모델에서 특정 테이블을 선택하신 뒤에 우클릭 한뒤에 

    Index Properties를 선택하시면 상단에 PK가 바뀐 것이 보입니다. 

   (아래 이미지에서 선택된게 잘못되었네요. ㅋ)

 

  추가적으로 다른 분께서 만드신 것도 같이 공유하겠습니다. 

 

%If(%==(%KeyType,PK)){U_}_%TableName
%If(%==(%Substr(%KeyType,1,2),IE)){N}U_%TableName
%If(%==(%Substr(%KeyType,1,2),IE)){N}U%If(%==(%KeyType,PK)){PK}_%TableName%If(%Not(%==(%KeyType,PK))){%Substr(%KeyName,%Len(%KeyName))}

내가 쓰는 방식 : %If(%==(%Substr(%KeyType,1,2),IE)){IX}%If(%==(%Substr(%KeyType,1,2),AK)){UIX}%If(%==(%KeyType,PK)){PK}_%TableName%If(%Not(%==(%KeyType,PK))){_%Substr(%KeyType,3,1)}

[출처] Erwin Index Naming Rule을 이용한 인덱스 명 자동 변경 방법 |작성자 atlaslee

 

이렇게 해서 좀 편하게 모델링이 되었으면 좋겠습니다.

그럼 수고들 하세요.

반응형

DB관련/Oracle Related Articles

MORE

Comments