Day40 - 논리적 데이터 모델링

2021. 4. 12. 17:14Oracle 공부

이번에는 논리적 데이터 모델링에 대해서 알아 봅시다.

 

논리적 데이터 모델링

논리적 데이터 모델링이란, 개념적 데이터 모델링 한 것을 표로 전환하는 것을 의미 합니다.

 

저희는 이번에 ERMaster 를 사용할 겁니다.

※ 툴은 쓰고 싶은거 아무거나 쓰면 됩니다.

 

ERMaster는 이클립스에서 사용이 가능 합니다.

이클립스를 실행 시켜 주세요.

 

이클립스 상단에 있는 탭 중에 Help -> Install New software... 를 클릭합니다

Add.... 클릭

아래와 같이 입력 한 후. Add 를 누릅니다. ( 대소문자 구분 )

Name : ERMaster

Location : http://ermaster.sourceforge.net/update-site

아래와 같이 ERMaster 가 생겼다면, 체크박스를 클릭하고 Next를 눌러 줍니다.

라이센스에 동의하고 Finish를 눌러 줍니다.

조금 기다리면 이 창이 나올텐데, Install anyway 를 눌러주세요.

마지막으로 이클립스를 껏다가 키는 거까지.

이제 자바 프로젝트를 하나 만듭니다.

※ ERMaster는 테마가 하얀게 더 보기가 좋더라구요

 

우클릭 -> New -> Project

java Project 를 클릭 해줍니다.

Next 를 눌러 주세요

프로젝트 이름은 원하시는 대로 해주세요 ( 저는 ERD1 )

Finish를 눌러주세요

생성된 프로젝트 하위 폴더 src 우클릭 -> New -> Other... 클릭

er을 검색했을 때, 이렇게 ERMaster 가 나오면 선택 후 Next를 눌러주세요

위의 폴더 경로는 src 로 선택해 주시고, 아래의 파일네임을 입력하고 Next를 누릅니다

사용하고 있는 데이터베이스를 선택해 주세요 ( 저는 Oracle )

Finish를 눌러주세요.

그러면 아래 화면과 같이 생성이 됩니다.

이제 개념적 데이터 모델링 한 걸 보면서, 표로 만들어 주면 됩니다. ( 이미지 삽입을 해서 가지고 왔습니다 )

테이블을 선택해서 원하는 지점에 클릭해 줍니다 !

만든 테이블을 더블 클릭 해주세요 !

물리명과 논리명을 같은 이름으로 지정해주세요 ( 대문자로 만들기 )

추가를 눌러서 Attribute 를 만들어 줍니다.

아래와 같이, 기본 키를 선택하고, 물리명 논리명은 ID, 형식은 varchar2(n) 길이는 30 을 선택하고 OK를 눌러줍니다

※ AUTO_INCREMENT -> 순차적으로 값이 증가함 ( 시퀀스 )

똑같이 , NAME 도 만들어 주고 ( 기본키 X , 낫널 O)

REGDATE 라는 DATE 형식의 기본값 현재일자를 넣어서 만듭니다.

아래와 같이 만들었다면 OK 를 눌러줍니다.

아래와 같이 기준이 되는 테이블을 만들어 주고, 이제 관계를 설정해 주면 됩니다.

관계 설정은 빨간 박스 안에 있는 기능을 사용하면 되는데요

 

FK가 될 Attribute 가 이미 있다면 -> 기존 컬럼을 사용한 관계

FK가 될 Attribute 가 없다면 -> 1:N 관계를 눌러주면 됩니다.

 

※ 기능 선택 후 주 테이블 선택 , 부 테이블 선택

기존 컬럼을 사용한 관계를 클릭했을 경우. 아래와 같이 외부 키를 지정해 주어야 합니다.

관계 표시가 나타난 후에, 관계 표시 (선) 을 더블클릭 해서 관계 맞게 지정해 줍니다.

개념적 데이터 모델링한 것을 보면서, 아래의 그림과 같이 만들어 주면 됩니다.

그리고 N : N 같은 경우에는 서로 연결시키면 저절로 맵핑 테이블이 생성이 됩니다.

생성이 된 테이블을 이름을 변경시키고 , 키 지정 해주면 됩니다 ( 필요하다면 Atrribute 추가 )

 

그래서 아래와 같이 완성이 되었습니다.

이렇게 논리적 데이터 모델링에 대해 알아 보았습니다.

 

실력이 뛰어날 경우.... 개념적 데이터 모델링을 건너뛰고 바로 논리적 데이터 모델링을 하는 경우도 있다고 합니다.

 

고생하셨습니다.

'Oracle 공부' 카테고리의 다른 글

Day41 - 물리적 데이터 모델링  (0) 2021.04.13
Day40 - 정규화  (0) 2021.04.12
Day39 - 개념적 데이터 모델링  (0) 2021.04.12
Day39 - 데이터 모델링  (0) 2021.04.12
Day39 - 권한, 사용자 계정 생성, 수정, 삭제  (0) 2021.04.09