만쥬의 개발일기
article thumbnail

 

ERD 생성

먼저 새 ERD를 만들고 테이블을 하나 생성하면 다음과 같은 초기화면이 생긴다.

 

위의 두개의 title에는 왼쪽은 논리적이름을, 오른쪽은 물리적이름을 적어준다.

 

논리적 이름 : 내가 알아보기 위한 이름

물리적 이름 : 실제 데이터베이스에 저장되는 테이블 이름

 

왼쪽 노란색 버튼은 PK attribute를 추가하고, 파란색 버튼은 일반 attribute를 추가한다.

 

row를 클릭하고, 오른쪽 i 버튼을 누르면 값을 편리하게 수정할 수도 있다.

 

노출되는 속성 선택

테이블에서 어떤 속성을 보여줄지는 오른쪽 위 톱니바퀴 모양 아이콘을 누르면 

 

다음과 같은 화면에서 설정할 수있다.

Display가 화면에서 보여지는 테이블의 속성을 선택하는 곳이고,

share가 다른 사용자와 동시 작업을 할지를 선택하는 옵션이다.

 

관계도 그리기

테이블간의 관계를 표시할때는 왼쪽 네비게이션 바에서 화살표를 선택한다. 네비게이션바를 호버하면 화살표(카디널리티)에 대한 설명을 볼 수 다.

화살표를 선택하면 다음과 같이 dentifying Relationship, Non-Identifying Relationship 중 고르라고 한다.

이에 대한 설명은 뒤에서 하겠다.

 

시작테이블을 선택하고 도착 테이블을 선택하면 관계도가 그려진다.

이때, 이 관계를 해제하려면 연결되어있는 (FK로 등록된) attribute를 삭제해야한다.

 

 

 

 

 

Identifying Relationship (식별관계)

쉽게 말하면, 위의 예시에서 대학원생 레코드는 교수 레코드 없이는 존재할 수 없다

 

테이블에서의 특징으로

  • 자식 테이블 (대학원생) 은 부모 테이블 (교수) 의 기본 키 (Primary Key) 칼럼 값을 외래 키 (Foreign Key) 로 사용한다
  • 이때 이 외래 키 또한 자식 테이블의 또다른 기본 키로 사용된다
  • 부모 테이블의 기본 키를 자식 테이블에서도 기본 키로 사용하므로, 부모 테이블의 레코드가 존재하지 않으면 자식 테이블 또한 존재할 수 없다 (종속되었다)

ERD에서는 실선으로 표현된다

ERDCloud 상에서는 자식 테이블에 추가된 FK가 PK와 같은 바탕색으로 표현되며, 기본 키라는 것을 알려준다

일상생활에서의 예시로는

  • 구매자가 존재하지 않을 경우 구매 내역도 존재할 수 없다
  • 학생이 존재하지 않을 경우 제출 과제 또한 존재할 수 없다

등등이 있겠다

Non-Identifying Relationship 비식별관계

 

이 관계에서 대학원생은 굳이 교수가 없어도 존재할 수 있다

테이블에서의 특징으로

  • 자식 테이블 (대학원생) 은 부모 테이블 (교수) 의 기본 키 컬럼 값을 외래 키로 사용하지만, 식별관계와 다르게 기본 키로서는 작동하지 않는다
  • 단순 외래 키로만 사용하므로, 딱히 부모 테이블의 레코드가 존재하지 않아도 상관 없다 (독립적이다)

ERD에서는 점선으로 표현된다

ERDCloud에서는 자식 테이블에 추가된 FK가 일반 컬럼과 같은 바탕색으로 표현된다

일상생활에서의 예시로는

  • 세입자가 존재하지 않아도 건물이나 방은 존재할 수 있다
  • 환자가 굳이 없어도 병원 자체는 존재할 수 있다

등등이 있다

 

Export 하기 

좌측 하단 export 버튼을 누르면, 이미지로 내보낼 수도 있고 다음과 같이 내 ERD를 바탕으로 SQL 문을 짜주기도 한다.

 

 

reference

profile

만쥬의 개발일기

@KangManJoo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!