RelatiQ ER Designer무료 다운로드
사용설명서ERD 그리기관계선(FK) 편집 · 기호 표기

관계선(FK) 편집 · 기호 표기

관계선은 두 엔티티의 참조 관계를 잇는 선입니다. 부모 엔티티(기본키를 가진 쪽)를 먼저 클릭하고 자식 엔티티(FK를 받는 쪽)를 클릭하면, 부모의 기본키가 자식에 FK 컬럼으로 저절로 들어갑니다. 그린 뒤에는 선 경로를 다듬고, 선 모양(직각선 · 베지어 곡선)과 선 끝 기호 표기를 고를 수 있습니다.

이럴 때 씁니다

  • 주문 테이블이 회원 번호를 참조하도록 FK를 넣을 때
  • 부모의 기본키가 자식의 기본키 일부가 되는 관계(식별 관계)를 그릴 때
  • 두 테이블의 다대다 관계를 표시할 때
  • 관계선이 엔티티를 가로질러 지저분할 때 경로를 다듬거나 한 번에 정리할 때
  • 문서나 팀 규칙에 맞춰 선 끝 기호(까마귀발, IDEF1X 등)를 바꿀 때

메뉴 위치

  • 관계선 그리기 — 왼쪽 도구막대의 관계선 도구 세 가지
    • 비식별 관계선 추가 — 비식별 관계(1:N), 단축키 R
    • 식별 관계선 추가 — 식별 관계(1:1)
    • 다대다(N:N) 관계선 추가 — 다대다 관계(N:N)
  • 관계 편집 · 삭제 — 관계선 위에서 오른쪽 버튼 → 관계 편집... · 관계선 삭제
  • 선 모양 — 툴바의 직각선 · 베지어 곡선 단추(마우스를 올리면 직각선 사용 · 베지어 곡선 사용으로 표시)
  • 관계선 정리 — 툴바 자동 배치 ▾ › 관계선 정리(직각선일 때)
  • 기호 표기 — 툴바 보기 ▾ › 관계선 기호 표기, 또는 환경설정의 관계선 끝 기호 표기 :

화면과 버튼

관계의 종류

종류도구자식 엔티티에 생기는 컬럼선
비식별 관계(1:N)비식별 관계선 추가부모 기본키와 같은 이름 · 데이터타입의 FK 컬럼(일반 컬럼)점선
식별 관계(1:1)식별 관계선 추가부모 기본키가 자식의 기본키이자 FK가 됩니다. 이 자식을 다시 부모로 삼아 관계선을 그으면 이 컬럼도 함께 넘어갑니다.실선
다대다(N:N)다대다(N:N) 관계선 추가비식별 관계와 같은 FK 컬럼점과 선이 번갈아 나오는 선
  • FK 컬럼은 부모 기본키와 같은 이름 · 데이터타입으로 만들어지고, 반드시 NOT NULL이 됩니다. PK 칸에는 연결 고리 아이콘이 표시됩니다.
  • 다대다 관계가 있으면 DDL 스크립트를 만들 때 두 테이블을 잇는 연결 테이블(부모_자식_Junction) 생성문이 함께 들어갑니다(→ DDL 스크립트 · DB에 직접 생성).

그리는 동안의 안내

관계선 도구를 고르면 커서 옆에 말풍선이 따라다니며 지금 할 일을 알려 줍니다. 상태바에도 같은 안내가 나옵니다.

단계말풍선상태바
1/2"PK 를 가진 부모 엔티티(참조되는 쪽)를 클릭하세요.""관계선 추가 — 부모(참조되는) 엔티티를 클릭하세요 (ESC 취소)"
2/2"부모의 키를 FK 컬럼으로 물려받을 자식 엔티티(참조하는 쪽)를 클릭하세요. (ESC 취소)""관계선 추가 — 자식(참조하는) 엔티티를 클릭하세요 (ESC 취소)"
  • 말풍선은 부모 엔티티를 실제로 클릭해야 2/2로 넘어갑니다. 빈 캔버스나 메모처럼 엔티티가 아닌 곳을 클릭하면 1/2 안내가 그대로 남습니다.
관계선 도구를 고른 뒤 커서 옆 말풍선(1/2 부모 단계)과 상태바 안내

관계 편집 창

관계선을 더블클릭하거나, 오른쪽 버튼 → 관계 편집...으로 엽니다.

이름하는 일
ForeignKey NameFK 제약 조건 이름입니다. 이 창에서 고칠 수 있는 것은 이 이름뿐입니다. 띄어쓰기는 지워지고, 비워 두면 원래 이름으로 돌아갑니다.
Parent Entity · Child Entity부모 · 자식 엔티티 이름(보기만 가능)
부모 컬럼명 · 자식 컬럼명어느 기본키가 어느 FK로 이어졌는지 보여 주는 목록(보기만 가능)
Save이름을 저장하고 창을 닫습니다.

선 모양 — 직각선과 베지어 곡선

툴바의 두 단추로 캔버스 전체의 선 모양을 바꿉니다. 켜진 쪽 단추가 노란색으로 표시됩니다.

모양특징
직각선가로 · 세로 구간으로 꺾이는 선입니다. 엔티티 사이에 선 하나가 그려지고, 손잡이로 꺾이는 위치를 직접 다듬을 수 있습니다. 관계선 정리를 쓸 수 있습니다.
베지어 곡선부드러운 곡선입니다. 이어진 PK–FK 컬럼 짝마다 부모 행과 자식 행의 옆면을 잇는 곡선이 하나씩 그려집니다. 경로는 저절로 정해지며 손잡이가 없습니다.
  • 선 모양은 프로젝트 파일에 함께 저장되어, 파일을 다시 열면 저장할 때의 모양으로 그려집니다.
  • 프로그램을 시작할 때의 선 모양은 환경설정의 프로젝트 시작시 참조선 타입 :에서 직선(사용자가 위치수정가능) 또는 베지어곡선(자동)으로 정합니다(→ 환경설정).
같은 ERD를 직각선과 베지어 곡선으로 그린 모습
같은 ERD를 직각선과 베지어 곡선으로 그린 모습

기호 표기(카디널리티)

관계선 양 끝에 붙는 기호를 다섯 가지 표기 중에서 고릅니다. 보기 ▾ › 관계선 기호 표기에서 고르면 바로 다시 그려지고, 환경설정의 관계선 끝 기호 표기 :에서도 같은 항목을 고를 수 있습니다.

표기부모 쪽 끝자식 쪽 끝
까마귀발 (기본)짧은 막대 하나(|)까마귀발
까마귀발 + 최소기수 (정식 IE)막대 두 개(‖) — 최소 1, 최대 1○ + 까마귀발 — 0개 이상
점 표기 (IDEF1X)기호 없음채운 점 ●
화살표부모를 가리키는 채운 화살촉(자식이 부모를 참조하는 방향)기호 없음
미니멀 점 (○/●)속 빈 원 ○채운 점 ●
  • 기호 표기는 프로그램 전체 설정입니다. 한 번 고르면 모든 프로젝트에 같은 표기가 쓰이고, 프로젝트 파일에는 저장되지 않습니다.
  • 기호는 직각선과 베지어 곡선 모두에 붙습니다.
  • 식별 · 비식별 · 다대다는 기호가 아니라 선의 모양(실선 · 점선 · 점과 선이 번갈아 나오는 선)으로 구분합니다.

따라 하기

관계선 그리기

  1. 도구를 고릅니다

    왼쪽 도구막대에서 관계 종류에 맞는 도구를 클릭합니다. 비식별 관계라면 R을 눌러도 됩니다. 커서 옆에 "1/2" 말풍선이 나타납니다.

  2. 부모 엔티티를 클릭합니다

    기본키를 가진 쪽(참조되는 쪽, 예: PRODUCT)을 클릭합니다. 말풍선이 "2/2"로 바뀝니다.

  3. 자식 엔티티를 클릭합니다

    FK를 받을 쪽(참조하는 쪽, 예: PAYMENT)을 클릭합니다. 관계선이 이어지고, 자식 엔티티에 부모 기본키와 같은 이름의 FK 컬럼(예: product_no)이 추가됩니다.

  4. 선택 도구로 돌아옵니다

    선 하나를 그리면 도구가 저절로 선택 도구로 돌아갑니다. 중간에 그만두려면 Esc를 누릅니다.

관계선 선택하고 경로 다듬기(직각선)

  1. 관계선을 클릭합니다

    선이 굵어지고, 부모의 기본키 행과 자식의 FK 행만 강조되어 어느 컬럼끼리 이어졌는지 보입니다.

  2. 노란 손잡이를 끕니다

    직각선 모드에서는 선 위에 노란 사각 손잡이가 나타납니다. 가운데 손잡이를 끌면 꺾이는 위치가, 양 끝 손잡이를 끌면 엔티티에 닿는 위치가 바뀝니다. 선은 늘 가로 · 세로로만 꺾입니다.

  3. 엔티티를 옮겨 봅니다

    엔티티를 옮기면 선이 따라오고, 직접 다듬은 꺾임 위치는 되도록 유지됩니다.

  4. 한 번에 정리하려면

    자동 배치 ▾ › 관계선 정리를 고르면 모든 관계선이 엔티티 위치에 맞춰 다시 그려집니다. 직접 다듬은 꺾임은 모두 처음 상태로 돌아갑니다(→ 정렬과 자동 배치).

관계선 지우기

  1. 관계선 위에서 오른쪽 버튼을 클릭하고 관계선 삭제를 고릅니다

    "자식 엔티티의 FK 컬럼도 함께 정리됩니다."라는 확인 창이 나옵니다.

  2. 예를 클릭합니다

    관계선이 지워지고, 이 관계로 생겼던 자식의 FK 컬럼도 함께 지워집니다.

관계선을 클릭해 선택한 뒤 Delete를 눌러도 지워집니다. 지운 관계선은 Ctrl+Z로 되살릴 수 있습니다.

알아 두기

  • 부모 기본키를 바꾸면 FK가 따라갑니다 — 부모의 기본키 컬럼 이름을 바꾸면 자식의 FK 이름도 바뀝니다(자식에서 FK 이름을 따로 고쳐 둔 경우는 그대로 둡니다). 데이터타입을 바꾸면 FK의 데이터타입도 바뀌고, 부모에 기본키를 더하면 자식에 FK가 더해지며, 기본키를 해제하면 그 FK가 자식에서 빠집니다. 식별 관계로 이어진 손자 엔티티까지 함께 바뀝니다.
  • FK 컬럼은 자식에서 직접 바꿀 수 없는 것이 있습니다 — 데이터타입 · 기본키 · NULL 허용 · 기본값 · 자동 증가는 부모를 따라가므로 바꿀 수 없고, ✕로 지울 수도 없습니다. FK 컬럼의 이름은 고칠 수 있습니다(→ 엔티티(테이블) 편집).
  • 관계 종류는 그린 뒤에 바꿀 수 없습니다 — 비식별을 식별로 바꾸려면 관계선을 지우고 알맞은 도구로 다시 그립니다.
  • 엔티티를 지우면 연결된 관계선도 지워집니다 — 부모 엔티티를 지우면 그 관계로 생긴 자식의 FK 컬럼도 함께 정리됩니다.
  • 자기 자신을 참조하는 관계(셀프 관계) — 비식별 · 다대다 도구로 같은 엔티티를 두 번 클릭하면 엔티티 모서리에 고리 모양의 셀프 관계선이 생깁니다. 이 고리를 클릭하면 "셀프 참조 라인을 제거 하시겠습니까?"라고 묻습니다. 식별 관계 도구로는 셀프 관계를 만들 수 없고, 이 도구로 같은 엔티티를 두 번 클릭하면 "같은 엔티티끼리의 관계는 비식별 관계선으로만 그릴 수 있습니다."라는 안내가 나옵니다.
  • 관계선 색은 테마를 따릅니다 — 관계선 색은 고른 테마에 따라 정해집니다(→ 보기).
팁

관계선을 하나 선택하면 연결된 PK–FK 행만 강조되고, 엔티티를 하나 선택하면 그 엔티티와 이어진 행들이 강조됩니다. 어느 컬럼끼리 이어졌는지 확인할 때 쓰세요.

주의

그리는 도중에 엔티티가 아닌 곳(빈 캔버스, 메모 등)을 클릭해도 도구는 꺼지지 않고, 단계도 넘어가지 않습니다. 그만두려면 Esc를 누르세요.

자주 묻는 것

관계선을 그었는데 FK가 안 생겨요.

부모 엔티티에 기본키가 없으면 관계선만 그려지고 FK 컬럼은 생기지 않습니다. 부모 엔티티의 컬럼에서 PK를 켜면 그때 자식에 FK 컬럼이 들어갑니다. 부모와 자식을 거꾸로 클릭하지 않았는지도 확인하세요. 먼저 클릭한 쪽이 부모입니다.

자식에 이미 같은 이름의 컬럼이 있는데 관계선을 그었어요.

FK 컬럼은 부모 기본키와 같은 이름으로 따로 추가되므로 이름이 겹칠 수 있습니다. 기존 컬럼을 지우거나 이름을 바꿔 정리하세요.

FK 제약 조건 이름을 바꾸고 싶어요.

관계선을 더블클릭해 관계 편집 창을 열고 ForeignKey Name을 고친 뒤 Save를 클릭합니다.

선을 직접 꺾을 수 없어요.

베지어 곡선 모드에서는 경로가 자동입니다. 툴바의 직각선 단추를 켜면 손잡이로 꺾임을 다듬을 수 있습니다.

관계선 정리가 흐리게 나와요.

관계선 정리는 직각선 모드에서만 쓸 수 있습니다.

화살표 표기에서 화살표가 부모 쪽을 가리켜요.

맞습니다. 자식이 부모를 참조하는 방향을 나타내므로 화살촉은 부모 쪽 끝에 붙습니다.

관련 항목